void main(int argc, char *argv[]) { char *host = NULL; char *user = NULL; char *pass = NULL; char *root = NULL; char mode = 'I'; int i; for (i=1;i<argc;i++) { if (*argv[i] == '-') { switch (argv[i][1]) { case 'l': user = argv[++i]; break; case 'p': pass = argv[++i]; break; case 'd': ftplib_debug++; break; case 'r': root = argv[++i]; break; case 'a': mode = 'A'; break; case 'i': mode = 'I'; break; default: usage(argv[0]); } } else if (host == NULL) host = argv[i]; else usage(argv[0]); } ftpInit(); if (user == NULL) { user = "******"; if (pass == NULL) { char *u,h[64]; u = getenv("USER"); if (gethostname(h,64) < 0) { perror("gethostname"); exit(2); } if ((u != NULL) && (h != NULL)) { static char xxx[64]; sprintf(xxx,"%s@%s",u,h); pass = xxx; } } } if ((host == NULL) || (user == NULL) || (pass == NULL)) usage(argv[0]); if (!ftpget(host,user,pass,root,mode)) exit(2); exit(0); }
void main(int argc, char *argv[]) { char *host = NULL; char *user = NULL; char *pass = NULL; char *root = NULL; char mode; char *fspec = NULL; int opt; int i; while ((opt = getopt(argc,argv,"ail:p:r:v:")) != -1) { if (opt == '?') { fprintf(stderr,"Unknown option %s\n",argv[optind]); exit(2); } switch (optopt) { case 'a' : mode = 'A'; break; case 'i' : mode = 'I'; break; case 'l' : if (opt == ':') { fprintf(stderr,"Missing value for -l\n"); exit(2); } user = optarg; break; case 'p' : if (opt == ':') { fprintf(stderr,"Missing value for -p\n"); exit(2); } pass = optarg; break; case 'r' : if (opt == ':') { fprintf(stderr,"Missing value for -r\n"); exit(2); } root = optarg; break; case 'v' : if (opt == ':') ftplib_debug++; else ftplib_debug = atoi(optarg); break; } } for (i=1;i<argc;i++) { if (*argv[i] == '-') { switch (argv[i][1]) { case 'l': user = argv[++i]; break; case 'p': pass = argv[++i]; break; case 'd': ftplib_debug++; break; case 'r': root = argv[++i]; break; default: usage(argv[0]); } } else if (host == NULL) host = argv[i]; else if (fspec == NULL) fspec = argv[i]; else usage(argv[0]); } ftpInit(); if (user == NULL) { user = "******"; if (pass == NULL) { char *u,h[64]; u = getenv(ENV_USER); if (gethostname(h,64) < 0) { perror("gethostname"); exit(2); } if ((u != NULL) && (h != NULL)) { static char xxx[64]; sprintf(xxx,"%s@%s",u,h); pass = xxx; } } } if ((host == NULL) || (user == NULL) || (pass == NULL)) usage(argv[0]); if (!ftpdir(host,user,pass,root,fspec)) exit(2); exit(0); }