|
|
1.1 root 1: #include "modemcap.h"
2:
3: static char f_names[] = "asditthc";
4: static char *f_caps[] = {
5: &AS, &DI, &TT, &HC
6: };
7:
8: static char i_names[] = "bdblidad";
9: static int *i_caps[] = {
10: &BD, &BL, &ID, &AD
11: };
12:
13: static char c_names[] = "cscedsdeiscoclathu";
14: static char **c_caps[] = {
15: &CS, &CE, &DS, &DE, &IS, &CO, &CL, &AT, &HU
16: };
17:
18: initmodem (modem, fd)
19: char *modem; /* name of modem */
20: int fd; /* channel to modem */
21: {
22: static char mcapbuf[1024];
23: static char area[1024];
24: char *ap = area;
25: register char *cp;
26: register int i, j;
27: char *mgetstr ();
28:
29: if (mgetent (mcapbuf, modem) != 1)
30: return (0);
31:
32: for (i = 0, cp = f_names;*cp;i++, cp += 2)
33: *(f_caps[i]) = mgetflag (cp);
34:
35: for (i = 0, cp = i_names;*cp;i++, cp += 2)
36: *(i_caps[i]) = ((j=mgetnum(cp)) >= 0) ? j: 0;
37:
38: for (i = 0, cp = c_names;*cp;i++, cp += 2)
39: *(c_caps[i]) = mgetstr (cp, &ap);
40:
41: if (IS != (char *) 0) {
42: write (fd, IS, strlen (IS));
43: if (ID)
44: sleep (ID);
45: }
46: return (1);
47: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.