#include FILE *ftar; extern int create_tar(); extern int tfile; extern char tarfile[32]; extern char *wildcard(); extern char *index(); ctar(ac,av) int ac; char *av[]; { char fname[16]; if(ac) { if(tfile) { ftar=fopen(tarfile,"wb"); if(!ftar) { printf("Error opening '%s'\n", tarfile); Exit(1); } } else { if(topen(1)) { printf("Tar aborted\n"); Exit(1); } } while(ac--) { if(index(*av, '*')) { strcpy(fname, wildcard(*av++)); while(fname[0] != '{') { if(ftw(fname,create_tar,10))break; sprintf(fname, "%s", wildcard(0L)); } } else if(ftw(*av++,create_tar,10))break; } if(tfile) fclose(ftar); else { tfmark(); tclose(); } } }