static int common_prolog(struct cmd_syndesc * as, struct fssync_state * state) { struct cmd_item *ti; VolumePackageOptions opts; #ifdef AFS_NT40_ENV if (afs_winsockInit() < 0) { Exit(1); } #endif VOptDefaults(debugUtility, &opts); if (VInitVolumePackage2(debugUtility, &opts)) { /* VInitVolumePackage2 can fail on e.g. partition attachment errors, * but we don't really care, since all we're doing is trying to use * FSSYNC */ fprintf(stderr, "errors encountered initializing volume package, but " "trying to continue anyway\n"); } DInit(1); if ((ti = as->parms[COMMON_PARMS_OFFSET].items)) { /* -reason */ state->reason = atoi(ti->data); } else { state->reason = FSYNC_WHATEVER; } if ((ti = as->parms[COMMON_PARMS_OFFSET+1].items)) { /* -programtype */ if (!strcmp(ti->data, "fileServer")) { programType = fileServer; } else if (!strcmp(ti->data, "volumeUtility")) { programType = volumeUtility; } else if (!strcmp(ti->data, "salvager")) { programType = salvager; } else if (!strcmp(ti->data, "salvageServer")) { programType = salvageServer; } else if (!strcmp(ti->data, "volumeServer")) { programType = volumeServer; } else if (!strcmp(ti->data, "volumeSalvager")) { programType = volumeSalvager; } else { programType = (ProgramType) atoi(ti->data); } } VConnectFS(); return 0; }
static int common_prolog(struct cmd_syndesc * as, struct state * state) { register struct cmd_item *ti; #ifdef AFS_NT40_ENV if (afs_winsockInit() < 0) { Exit(1); } #endif VInitVolumePackage(debugUtility, 1, 1, DONT_CONNECT_FS, 0); DInit(1); if ((ti = as->parms[COMMON_PARMS_OFFSET].items)) { /* -reason */ state->reason = atoi(ti->data); } if ((ti = as->parms[COMMON_PARMS_OFFSET+1].items)) { /* -programtype */ if (!strcmp(ti->data, "fileServer")) { programType = fileServer; } else if (!strcmp(ti->data, "volumeUtility")) { programType = volumeUtility; } else if (!strcmp(ti->data, "salvager")) { programType = salvager; } else if (!strcmp(ti->data, "salvageServer")) { programType = salvageServer; } else { programType = (ProgramType) atoi(ti->data); } } VConnectFS(); return 0; }