int display_drive(char *drive, bool display_local, int verbose) { char dt[100]; int status = 0; if (drivetype(drive, dt, sizeof(dt))) { if (display_local) { /* in local mode, display only harddrive */ if (strcmp(dt, "fixed") == 0) { printf("%s\n", drive); } } else if (verbose) { printf("%s: %s\n", drive, dt); } else { puts(dt); } } else if (!display_local) { /* local mode is used by FileSet scripts */ fprintf(stderr, _("%s: unknown\n"), drive); status = 1; } return status; }
int main(int argc, char **argv) { char *p; char dt[1000]; int status = 0; if (argc < 2) { p = (argc < 1) ? "drivetype" : argv[0]; printf("usage:\t%s path ...\n" "\t%s prints the drive type and pathname of the paths.\n", p, p); return EXIT_FAILURE; } while (*++argv) { if (!drivetype(*argv, dt, sizeof(dt))) { status = EXIT_FAILURE; } else { printf("%s\t%s\n", dt, *argv); } } return status; }