+
+/***
+ * xuux(ename, s1, s2, f1, f2) execute uux for remote uucp
+ *
+ * return code - none
+ */
+
+xuux(ename, s1, f1, s2, f2)
+char *ename, *s1, *s2, *f1, *f2;
+{
+ char cmd[200];
+
+ DEBUG(4, "Ropt(%s) ", Ropt);
+ DEBUG(4, "ename(%s) ", ename);
+ DEBUG(4, "s1(%s) ", s1);
+ DEBUG(4, "f1(%s) ", f1);
+ DEBUG(4, "s2(%s) ", s2);
+ DEBUG(4, "f2(%s)\n", f2);
+ sprintf(cmd, "uux %s %s!uucp %s!%s \\(%s!%s\\)",
+ Ropt, ename, s1, f1, s2, f2);
+ DEBUG(4, "cmd (%s)\n", cmd);
+ system(cmd);
+ return;
+}
+
+FILE *Cfp = NULL;
+char Cfile[NAMESIZE];
+
+/***
+ * gtcfile(sys) - get a Cfile descriptor
+ *
+ * return an open file descriptor
+ */
+
+FILE *
+gtcfile(sys)
+char *sys;
+{
+ static char presys[8] = "";
+ static int cmdcount = 0;
+
+ if (strcmp(presys, sys) != SAME /* this is !SAME on first call */
+ || ++cmdcount > MAXCOUNT) {
+
+ cmdcount = 1;
+ if (presys[0] != '\0') {
+ clscfile();
+ }
+ gename(CMDPRE, sys, Grade, Cfile);
+ Cfp = fopen(Cfile, "w");
+ ASSERT(Cfp != NULL, "CAN'T OPEN %s", Cfile);
+ chmod(0200, Cfile);
+ strcpy(presys, sys);
+ }
+ return(Cfp);
+}
+
+/***
+ * clscfile() - close cfile
+ *
+ * return code - none
+ */
+
+clscfile()
+{
+ if (Cfp == NULL)
+ return;
+ fclose(Cfp);
+ chmod(0666, Cfile);
+ logent(Cfile, "QUE'D");
+ Cfp = NULL;
+ return;
+}