1*17781Sralph #ifndef lint 2*17781Sralph static char sccsid[] = "@(#)unet.c 4.1 (Berkeley) 01/22/85"; 3*17781Sralph #endif 4*17781Sralph 5*17781Sralph #include "../condevs.h" 6*17781Sralph #ifdef UNETTCP 7*17781Sralph 8*17781Sralph /* 9*17781Sralph * unetopn -- make UNET (tcp-ip) connection 10*17781Sralph * 11*17781Sralph * return codes: 12*17781Sralph * >0 - file number - ok 13*17781Sralph * FAIL - failed 14*17781Sralph */ 15*17781Sralph 16*17781Sralph /* Default port of uucico server */ 17*17781Sralph #define DFLTPORT 33 18*17781Sralph 19*17781Sralph unetopn(flds) 20*17781Sralph register char *flds[]; 21*17781Sralph { 22*17781Sralph register int ret, port; 23*17781Sralph int unetcls(); 24*17781Sralph 25*17781Sralph port = atoi(flds[F_PHONE]); 26*17781Sralph if (port <= 0 || port > 255) 27*17781Sralph port = DFLTPORT; 28*17781Sralph DEBUG(4, "unetopn host %s, ", flds[F_NAME]); 29*17781Sralph DEBUG(4, "port %d\n", port); 30*17781Sralph if (setjmp(Sjbuf)) { 31*17781Sralph logent("tcpopen", "TIMEOUT"); 32*17781Sralph endhnent(); /* see below */ 33*17781Sralph return CF_DIAL; 34*17781Sralph } 35*17781Sralph signal(SIGALRM, alarmtr); 36*17781Sralph alarm(30); 37*17781Sralph ret = tcpopen(flds[F_NAME], port, 0, TO_ACTIVE, "rw"); 38*17781Sralph alarm(0); 39*17781Sralph endhnent(); /* wave magic wand at 3com and incant "eat it, bruce" */ 40*17781Sralph if (ret < 0) { 41*17781Sralph DEBUG(5, "tcpopen failed: errno %d\n", errno); 42*17781Sralph logent("tcpopen", _FAILED); 43*17781Sralph return CF_DIAL; 44*17781Sralph } 45*17781Sralph CU_end = unetcls; 46*17781Sralph return ret; 47*17781Sralph } 48*17781Sralph 49*17781Sralph /* 50*17781Sralph * unetcls -- close UNET connection. 51*17781Sralph */ 52*17781Sralph unetcls(fd) 53*17781Sralph register int fd; 54*17781Sralph { 55*17781Sralph DEBUG(4, "UNET CLOSE called\n", 0); 56*17781Sralph if (fd > 0) { 57*17781Sralph #ifdef notdef 58*17781Sralph /* disable this until a timeout is put in */ 59*17781Sralph if (ioctl(fd, UIOCCLOSE, STBNULL)) 60*17781Sralph logent("UNET CLOSE", _FAILED); 61*17781Sralph #endif notdef 62*17781Sralph close(fd); 63*17781Sralph DEBUG(4, "closed fd %d\n", fd); 64*17781Sralph } 65*17781Sralph } 66*17781Sralph #endif UNETTCP 67