version 1.32, 2010/07/11 23:16:42 |
version 1.33, 2010/08/01 20:27:51 |
|
|
exit(3); |
exit(3); |
} |
} |
|
|
if (cgetstr(bp, "dv", &strval) < 0) |
/* String options. Use if not already set. */ |
strval = NULL; |
if (vgetstr(DEVICE) == NULL && cgetstr(bp, "dv", &strval) >= 0) |
vsetstr(DEVICE, strval); |
vsetstr(DEVICE, strval); |
if (cgetstr(bp, "cm", &strval) < 0) |
if (vgetstr(CONNECT) == NULL && cgetstr(bp, "cm", &strval) >= 0) |
strval = NULL; |
vsetstr(CONNECT, strval); |
vsetstr(CONNECT, strval); |
if (vgetstr(DISCONNECT) == NULL && cgetstr(bp, "di", &strval) >= 0) |
if (cgetstr(bp, "di", &strval) < 0) |
vsetstr(DISCONNECT, strval); |
strval = NULL; |
if (vgetstr(EOL) == NULL && cgetstr(bp, "el", &strval) >= 0) |
vsetstr(DISCONNECT, strval); |
vsetstr(EOL, strval); |
if (cgetstr(bp, "el", &strval) < 0) |
if (vgetstr(EOFREAD) == NULL && cgetstr(bp, "ie", &strval) >= 0) |
strval = NULL; |
vsetstr(EOFREAD, strval); |
vsetstr(EOL, strval); |
if (vgetstr(EOFWRITE) == NULL && cgetstr(bp, "oe", &strval) >= 0) |
if (cgetstr(bp, "ie", &strval) < 0) |
vsetstr(EOFWRITE, strval); |
strval = NULL; |
if (vgetstr(EXCEPTIONS) == NULL && cgetstr(bp, "ex", &strval) >= 0) |
vsetstr(EOFREAD, strval); |
vsetstr(EXCEPTIONS, strval); |
if (cgetstr(bp, "oe", &strval) < 0) |
if (vgetstr(RECORD) == NULL && cgetstr(bp, "re", &strval) >= 0) |
strval = NULL; |
|
vsetstr(EOFWRITE, strval); |
|
if (cgetstr(bp, "ex", &strval) < 0) |
|
strval = NULL; |
|
vsetstr(EXCEPTIONS, strval); |
|
if (cgetstr(bp, "re", &strval) < 0) |
|
strval = NULL; |
|
vsetstr(RECORD, strval); |
|
if (cgetstr(bp, "pa", &strval) < 0) |
|
strval = NULL; |
|
vsetstr(PARITY, strval); |
|
|
|
if (cgetstr(bp, "es", &strval) >= 0 && strval != NULL) |
|
vsetstr(ESCAPE, strval); |
|
if (cgetstr(bp, "fo", &strval) >= 0 && strval != NULL) |
|
vsetstr(FORCE, strval); |
|
if (cgetstr(bp, "pr", &strval) >= 0 && strval != NULL) |
|
vsetstr(PROMPT, strval); |
|
if (cgetstr(bp, "rc", &strval) >= 0 && strval != NULL) |
|
vsetstr(RECORD, strval); |
vsetstr(RECORD, strval); |
|
if (vgetstr(PARITY) == NULL && cgetstr(bp, "pa", &strval) >= 0) |
|
vsetstr(PARITY, strval); |
|
|
if (!vgetnum(BAUDRATE)) { |
/* Numbers with default values. Set if currently zero (XXX ugh). */ |
if (cgetnum(bp, "br", &val) == -1) |
if (vgetnum(BAUDRATE) == 0) { |
|
if (cgetnum(bp, "br", &val) < 0) |
vsetnum(BAUDRATE, DEFBR); |
vsetnum(BAUDRATE, DEFBR); |
else |
else |
vsetnum(BAUDRATE, val); |
vsetnum(BAUDRATE, val); |
} |
} |
if (!vgetnum(LINEDISC)) { |
if (vgetnum(LINEDISC) == 0) { /* XXX relies on TTYDISC == 0 */ |
if (cgetnum(bp, "ld", &val) == -1) |
if (cgetnum(bp, "ld", &val) < 0) |
vsetnum(LINEDISC, TTYDISC); |
vsetnum(LINEDISC, TTYDISC); |
else |
else |
vsetnum(LINEDISC, val); |
vsetnum(LINEDISC, val); |
} |
} |
if (cgetnum(bp, "fs", &val) == -1) |
if (vgetnum(FRAMESIZE) == 0) { |
vsetnum(FRAMESIZE, DEFFS); |
if (cgetnum(bp, "fs", &val) < 0) |
else |
vsetnum(FRAMESIZE, DEFFS); |
vsetnum(FRAMESIZE, val); |
else |
if (vgetstr(DEVICE) == NULL) { |
vsetnum(FRAMESIZE, val); |
fprintf(stderr, "%s: missing device spec\n", host); |
|
exit(3); |
|
} |
} |
|
|
vsetstr(HOST, host); |
/* Numbers - default values already set in vinit() or zero. */ |
if (cgetflag("hd")) |
if (cgetnum(bp, "es", &val) >= 0) |
|
vsetnum(ESCAPE, val); |
|
if (cgetnum(bp, "fo", &val) >= 0) |
|
vsetnum(FORCE, val); |
|
if (cgetnum(bp, "pr", &val) >= 0) |
|
vsetnum(PROMPT, val); |
|
if (cgetnum(bp, "rc", &val) >= 0) |
|
vsetnum(RAISECHAR, val); |
|
|
|
/* Numbers - default is zero. */ |
|
if (cgetnum(bp, "dl", &val) < 0) |
|
vsetnum(LDELAY, 0); |
|
else |
|
vsetnum(LDELAY, val); |
|
if (cgetnum(bp, "cl", &val) < 0) |
|
vsetnum(CDELAY, 0); |
|
else |
|
vsetnum(CDELAY, val); |
|
if (cgetnum(bp, "et", &val) < 0) |
|
vsetnum(ETIMEOUT, 0); |
|
else |
|
vsetnum(ETIMEOUT, val); |
|
|
|
/* Flag options. */ |
|
if (cgetflag("hd")) /* XXX overrides command line */ |
vsetnum(HALFDUPLEX, 1); |
vsetnum(HALFDUPLEX, 1); |
if (cgetflag("ra")) |
if (cgetflag("ra")) |
vsetnum(RAISE, 1); |
vsetnum(RAISE, 1); |
|
|
vsetnum(SCRIPT, 1); |
vsetnum(SCRIPT, 1); |
if (cgetflag("tb")) |
if (cgetflag("tb")) |
vsetnum(TABEXPAND, 1); |
vsetnum(TABEXPAND, 1); |
if (cgetflag("vb")) |
if (cgetflag("vb")) /* XXX overrides command line */ |
vsetnum(VERBOSE, 1); |
vsetnum(VERBOSE, 1); |
if (cgetflag("nv")) |
if (cgetflag("nv")) /* XXX overrides command line */ |
vsetnum(VERBOSE, 0); |
vsetnum(VERBOSE, 0); |
if (cgetflag("ta")) |
if (cgetflag("ta")) |
vsetnum(TAND, 1); |
vsetnum(TAND, 1); |
|
|
vsetnum(DC, 1); |
vsetnum(DC, 1); |
if (cgetflag("hf")) |
if (cgetflag("hf")) |
vsetnum(HARDWAREFLOW, 1); |
vsetnum(HARDWAREFLOW, 1); |
|
|
if (vgetstr(RECORD) == NULL) |
if (vgetstr(RECORD) == NULL) |
vsetstr(RECORD, "tip.record"); |
vsetstr(RECORD, "tip.record"); |
if (vgetstr(EXCEPTIONS) == NULL) |
if (vgetstr(EXCEPTIONS) == NULL) |
vsetstr(EXCEPTIONS, "\t\n\b\f"); |
vsetstr(EXCEPTIONS, "\t\n\b\f"); |
if (cgetnum(bp, "dl", &val) == -1) |
|
vsetnum(LDELAY, 0); |
|
else |
|
vsetnum(LDELAY, val); |
|
if (cgetnum(bp, "cl", &val) == -1) |
|
vsetnum(CDELAY, 0); |
|
else |
|
vsetnum(CDELAY, val); |
|
if (cgetnum(bp, "et", &val) == -1) |
|
vsetnum(ETIMEOUT, 0); |
|
else |
|
vsetnum(ETIMEOUT, val); |
|
|
|
|
vsetstr(HOST, host); |
|
if (vgetstr(DEVICE) == NULL) { |
|
fprintf(stderr, "%s: missing device spec\n", host); |
|
exit(3); |
|
} |
return (vgetstr(DEVICE)); |
return (vgetstr(DEVICE)); |
} |
} |