home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / NEXTSTEP / UNIX / Connectivity / PPP / Patches / mgetty.patch.Z / mgetty.patch
Encoding:
Text File  |  1997-12-13  |  10.7 KB  |  467 lines

  1. *** mgetty-0.22/Makefile    Sun Nov 13 05:56:16 1994
  2. --- mgetty-0.22.patched/Makefile    Fri Nov 25 14:13:21 1994
  3. ***************
  4. *** 94,100 ****
  5.   #        USTAT      - ustat(), no statfs etc.
  6.   #
  7.   #CFLAGS=-Wall -O2 -pipe -DSECUREWARE -DUSE_POLL
  8. ! CFLAGS=-O2 -Wall -pipe
  9.   #CFLAGS=-O -DSVR4
  10.   #CFLAGS=-O -DSVR4 -DSVR42
  11.   #CFLAGS=-O -DUSE_POLL
  12. --- 94,100 ----
  13.   #        USTAT      - ustat(), no statfs etc.
  14.   #
  15.   #CFLAGS=-Wall -O2 -pipe -DSECUREWARE -DUSE_POLL
  16. ! # CFLAGS=-O2 -Wall -pipe
  17.   #CFLAGS=-O -DSVR4
  18.   #CFLAGS=-O -DSVR4 -DSVR42
  19.   #CFLAGS=-O -DUSE_POLL
  20. ***************
  21. *** 103,109 ****
  22.   # networking library and gcc.
  23.   #CFLAGS=-D_3B1_ -D_NOSTDLIB_H -DUSE_READ -DSHORT_FILENAMES
  24.   #CFLAGS=-std -DPOSIX_TERMIOS -O2 -D_BSD -DBSD    # for OSF/1 (w/ /bin/cc)
  25. ! #CFLAGS=-posix -DBSD                # for NeXT
  26.   
  27.   #
  28.   # LDFLAGS specify flags to pass to the linker. You could specify
  29. --- 103,109 ----
  30.   # networking library and gcc.
  31.   #CFLAGS=-D_3B1_ -D_NOSTDLIB_H -DUSE_READ -DSHORT_FILENAMES
  32.   #CFLAGS=-std -DPOSIX_TERMIOS -O2 -D_BSD -DBSD    # for OSF/1 (w/ /bin/cc)
  33. ! CFLAGS=-O -posix -D_POSIX_SOURCE -DBSD    # for NeXT
  34.   
  35.   #
  36.   # LDFLAGS specify flags to pass to the linker. You could specify
  37. ***************
  38. *** 127,138 ****
  39.   # For FreeBSD, add "-lutil" if the linker complains about
  40.   #     "utmp.o: unresolved symbod _login"
  41.   #
  42. ! LDFLAGS=
  43.   #LDFLAGS=-lprot -lsocket
  44.   #LDFLAGS=-s -shlib
  45.   #LDFLAGS=-lsocket
  46.   #LDFLAGS=-lbsd                    # OSF/1
  47. ! #LDFLAGS=-posix                    # NeXT
  48.   #
  49.   #
  50.   # the following things are mainly used for ``make install''
  51. --- 127,138 ----
  52.   # For FreeBSD, add "-lutil" if the linker complains about
  53.   #     "utmp.o: unresolved symbod _login"
  54.   #
  55. ! #LDFLAGS=
  56.   #LDFLAGS=-lprot -lsocket
  57.   #LDFLAGS=-s -shlib
  58.   #LDFLAGS=-lsocket
  59.   #LDFLAGS=-lbsd                    # OSF/1
  60. ! LDFLAGS=-s -posix                # NeXT
  61.   #
  62.   #
  63.   # the following things are mainly used for ``make install''
  64. ***************
  65. *** 168,174 ****
  66.   #
  67.   # the fax spool directory
  68.   #
  69. ! FAX_SPOOL=$(spool)/fax
  70.   FAX_SPOOL_IN=$(FAX_SPOOL)/incoming
  71.   FAX_SPOOL_OUT=$(FAX_SPOOL)/outgoing
  72.   #
  73. --- 168,174 ----
  74.   #
  75.   # the fax spool directory
  76.   #
  77. ! FAX_SPOOL=$(spool)/NeXTFaxes
  78.   FAX_SPOOL_IN=$(FAX_SPOOL)/incoming
  79.   FAX_SPOOL_OUT=$(FAX_SPOOL)/outgoing
  80.   #
  81. *** mgetty-0.22/locks.c    Sun Aug 21 08:48:30 1994
  82. --- mgetty-0.22.patched/locks.c    Sat Nov 26 14:34:02 1994
  83. ***************
  84. *** 173,180 ****
  85. --- 173,210 ----
  86.    *
  87.    *    if lockfile found, return PID of process holding it, 0 otherwise
  88.    */
  89. + #ifdef NeXT
  90. + int checklock _P1( (device), char * device)
  91. + {
  92. +     char name[8] ;
  93. +     char *names[] = {
  94. +     "ttydf%c", "ttyd%c", "ttyf%c", "tty%c",
  95. +     "cudf%c", "cuf%c", "cud%c", "cu%c", (char  *)0
  96. +     } ;
  97. +     register int i ;
  98. +     char     c ;
  99. +     char **    cp ;
  100.   
  101. +     /*
  102. +      *    Try each type of lock name in case we are using another.
  103. +      */
  104. +     if ((i = do_checklock (device)) != NO_LOCK)
  105. +     return (i) ;
  106. +     for (cp = names; *cp; ++cp)
  107. +     if (sscanf (device, *cp, &c) == 1)
  108. +         break ;
  109. +     for (cp = names; *cp; ++cp) {
  110. +     (void)sprintf (name, *cp, c) ;
  111. +     if ((i = do_checklock (name)) != NO_LOCK)
  112. +         return (i) ;
  113. +     }
  114. +     return (NO_LOCK) ;
  115. + }
  116. + int do_checklock _P1( (device), char * device)
  117. + #else
  118.   int checklock _P1( (device), char * device)
  119. + #endif
  120.   {
  121.       int pid;
  122.       struct stat st;
  123. *** mgetty-0.22/login.c    Fri Nov  4 15:39:54 1994
  124. --- mgetty-0.22.patched/login.c    Sat Nov 26 00:30:01 1994
  125. ***************
  126. *** 23,28 ****
  127. --- 23,32 ----
  128.   #include "policy.h"
  129.   #include "mg_utmp.h"
  130.   
  131. + #ifdef NeXT
  132. + # include <sys/ioctl.h>
  133. + #endif
  134.   #ifdef SECUREWARE
  135.   extern int setluid();
  136.   #endif
  137. ***************
  138. *** 284,289 ****
  139. --- 288,301 ----
  140.       Device, getpid(), CallerId, Connect, CallName,
  141.       cmd, user );
  142.   
  143. + #   ifdef NeXT
  144. +     {   struct sgttyb t ;
  145. +     (void)ioctl (0, TIOCGETP, &t) ;
  146. +     t.sg_flags |= EVENP | ODDP ;
  147. +     (void)ioctl (0, TIOCSETN, &t) ;
  148. +     }
  149. + #   endif
  150.       /* execute login */
  151.       execv( cmd, argv );
  152.   
  153. *** mgetty-0.22/mgetty.c    Wed Nov  2 11:21:44 1994
  154. --- mgetty-0.22.patched/mgetty.c    Wed Nov 23 08:03:24 1994
  155. ***************
  156. *** 16,21 ****
  157. --- 16,22 ----
  158.   #include <pwd.h>
  159.   #include <sys/types.h>
  160.   #include <sys/times.h>
  161. + #include <sys/fcntl.h>
  162.   
  163.   #include <sys/stat.h>
  164.   #include <signal.h>
  165. *** mgetty-0.22/sendfax.c    Tue Oct  4 03:35:21 1994
  166. --- mgetty-0.22.patched/sendfax.c    Sun Dec 18 10:48:30 1994
  167. ***************
  168. *** 51,56 ****
  169. --- 51,57 ----
  170.                char * fax_tty, boolean use_stdin )
  171.   {
  172.       char    device[MAXPATH];
  173. +     extern char *ttyname() ;
  174.       int    fd;
  175.   
  176.       if ( use_stdin )            /* fax modem on stdin */
  177. *** mgetty-0.22/tio.c    Sat Oct 22 09:27:41 1994
  178. --- mgetty-0.22.patched/tio.c    Sat Nov 26 00:21:44 1994
  179. ***************
  180. *** 9,15 ****
  181.   #include <unistd.h>
  182.   #include <sys/types.h>
  183.   
  184. ! #ifdef _AIX
  185.   #include <sys/ioctl.h>
  186.   #endif
  187.   
  188. --- 9,15 ----
  189.   #include <unistd.h>
  190.   #include <sys/types.h>
  191.   
  192. ! #if (defined(_AIX) || defined(NeXT))
  193.   #include <sys/ioctl.h>
  194.   #endif
  195.   
  196. ***************
  197. *** 32,38 ****
  198.   # include <sys/modem.h>
  199.   #endif
  200.   
  201. ! #if defined( M_UNIX ) && defined( MAM_BUG )
  202.   #include <fcntl.h>
  203.   #endif
  204.   
  205. --- 32,38 ----
  206.   # include <sys/modem.h>
  207.   #endif
  208.   
  209. ! #if (defined( M_UNIX ) && defined( MAM_BUG )) || defined(NeXT)
  210.   #include <fcntl.h>
  211.   #endif
  212.   
  213. ***************
  214. *** 152,158 ****
  215.   
  216.   int tio_set _P2( (fd, t), int fd, TIO * t)    /*!! FIXME: flags, wait */
  217.   {
  218. ! #ifdef sunos4
  219.       int modem_lines;
  220.   #endif
  221.   #ifdef SYSV_TERMIO
  222. --- 152,158 ----
  223.   
  224.   int tio_set _P2( (fd, t), int fd, TIO * t)    /*!! FIXME: flags, wait */
  225.   {
  226. ! #if (defined(sunos4) || defined(NeXT))
  227.       int modem_lines;
  228.   #endif
  229.   #ifdef SYSV_TERMIO
  230. ***************
  231. *** 178,183 ****
  232. --- 178,202 ----
  233.           ioctl(STDIN, TIOCMSET, &modem_lines);
  234.       }
  235.   #endif /* sunos4 */
  236. + #ifdef NeXT
  237. +     /* 
  238. +      *    Search out device types, if it is flow style device then we are on
  239. +      * the money ...
  240. +      */
  241. +     {    char    buffer[30] ;
  242. +     extern char *    ttyname ();
  243. +     strcpy (buffer, ttyname (STDIN)) ;
  244. +     buffer[strlen(buffer) - 1] = '\0' ;
  245. +         if (index (buffer, 'f'))
  246. +         {
  247. +             /* make sure RTS is asserted!!!!!! */
  248. +             ioctl(STDIN, TIOCMGET, &modem_lines);
  249. +             modem_lines |= (TIOCM_RTS | TIOCM_DTR);
  250. +             ioctl(STDIN, TIOCMSET, &modem_lines);
  251. +         }
  252. +     }
  253. + #endif
  254.   #endif /* posix_termios */
  255.   
  256.   #ifdef BSD_SGTTY
  257. ***************
  258. *** 292,299 ****
  259.              | LOBLK
  260.   #endif
  261.              );
  262. !     t->c_cflag|= CS8 | CREAD | HUPCL | ( local? CLOCAL:0 );
  263. !     t->c_lflag = ECHOK | ECHOE | ECHO | ISIG | ICANON;
  264.   
  265.   #if !defined(POSIX_TERMIOS)
  266.       t->c_line  = 0;
  267. --- 311,326 ----
  268.              | LOBLK
  269.   #endif
  270.              );
  271. !     t->c_cflag|= CS8 | CREAD | HUPCL | ( local? CLOCAL:0 )
  272. ! #ifdef PAR1
  273. !            | PAR1
  274. ! #endif
  275. !     ;
  276. !     t->c_lflag = ECHOK | ECHOE | ECHO | ISIG | ICANON
  277. ! #ifdef IEXTEN
  278. !            | IEXTEN
  279. ! #endif
  280. !     ;
  281.   
  282.   #if !defined(POSIX_TERMIOS)
  283.       t->c_line  = 0;
  284. ***************
  285. *** 387,393 ****
  286.       t->c_oflag &= ~ONLCR;
  287.       }
  288.   #else
  289. ! #include "not implemented yet"
  290.   #endif
  291.   }
  292.   
  293. --- 414,427 ----
  294.       t->c_oflag &= ~ONLCR;
  295.       }
  296.   #else
  297. !     if ( perform_mapping )
  298. !     {
  299. !         t->sg_flags |= CRMOD ;
  300. !     }
  301. !     else
  302. !     {
  303. !         t->sg_flags &= ~CRMOD ;
  304. !     }
  305.   #endif
  306.   }
  307.   
  308. ***************
  309. *** 413,419 ****
  310.       t->c_lflag &= ~XCASE;
  311.       }
  312.   # else
  313. ! # include "not implemented yet"
  314.   # endif
  315.   #endif        /* BSDI */
  316.   }
  317. --- 447,460 ----
  318.       t->c_lflag &= ~XCASE;
  319.       }
  320.   # else
  321. !     if ( perform_mapping )
  322. !     {
  323. !         t->sg_flags |= LCASE ;
  324. !     }
  325. !     else
  326. !     {
  327. !     t->sg_flags &= ~LCASE ;
  328. !     }
  329.   # endif
  330.   #endif        /* BSDI */
  331.   }
  332. ***************
  333. *** 434,440 ****
  334.       t->c_cflag |= CLOCAL;
  335.       }
  336.   #else
  337. ! #include "not implemented yet"
  338.   #endif
  339.   }
  340.   
  341. --- 475,481 ----
  342.       t->c_cflag |= CLOCAL;
  343.       }
  344.   #else
  345. ! # include "not implemented yet"
  346.   #endif
  347.   }
  348.   
  349. ***************
  350. *** 507,513 ****
  351.       if ( type & FLOW_XON_OUT )
  352.               t->c_iflag |= IXON | IXANY;
  353.   #else
  354. ! #include "not yet implemented"
  355.   #endif
  356.       /* SVR4 came up with a new method of setting h/w flow control */
  357.       /* unfortunately, it's broken in 4.2 and Solaris2! */
  358. --- 548,554 ----
  359.       if ( type & FLOW_XON_OUT )
  360.               t->c_iflag |= IXON | IXANY;
  361.   #else
  362. ! # include "not yet implemented"
  363.   #endif
  364.       /* SVR4 came up with a new method of setting h/w flow control */
  365.       /* unfortunately, it's broken in 4.2 and Solaris2! */
  366. ***************
  367. *** 606,612 ****
  368.   #if defined(SVR4) && defined(TIOCMBIS)        /* SVR4 special */
  369.       int mctl = TIOCM_DTR;
  370.   
  371. ! #ifdef sun
  372.       if ( ioctl( fd, TIOCMBIC, &mctl ) < 0 )
  373.   #else
  374.       if ( ioctl( fd, TIOCMBIC, (char *) mctl ) < 0 )
  375. --- 647,653 ----
  376.   #if defined(SVR4) && defined(TIOCMBIS)        /* SVR4 special */
  377.       int mctl = TIOCM_DTR;
  378.   
  379. ! #if (defined(sun) || defined(NeXT))
  380.       if ( ioctl( fd, TIOCMBIC, &mctl ) < 0 )
  381.   #else
  382.       if ( ioctl( fd, TIOCMBIC, (char *) mctl ) < 0 )
  383. ***************
  384. *** 615,621 ****
  385.       lprintf( L_ERROR, "TIOCMBIC failed" ); return ERROR;
  386.       }
  387.       delay( msec_wait );
  388. ! #ifdef sun
  389.       if ( ioctl( fd, TIOCMBIS, &mctl ) < 0 )
  390.   #else
  391.       if ( ioctl( fd, TIOCMBIS, (char *) mctl ) < 0 )
  392. --- 656,662 ----
  393.       lprintf( L_ERROR, "TIOCMBIC failed" ); return ERROR;
  394.       }
  395.       delay( msec_wait );
  396. ! #if (defined(sun) || defined(NeXT))
  397.       if ( ioctl( fd, TIOCMBIS, &mctl ) < 0 )
  398.   #else
  399.       if ( ioctl( fd, TIOCMBIS, (char *) mctl ) < 0 )
  400. ***************
  401. *** 653,659 ****
  402.       /* The "standard" way of doing things - via speed = B0
  403.        */
  404.       TIO t, save_t;
  405. ! #ifdef sunos4
  406.       int modem_lines;
  407.   #endif
  408.       int result;
  409. --- 694,700 ----
  410.       /* The "standard" way of doing things - via speed = B0
  411.        */
  412.       TIO t, save_t;
  413. ! #if (defined(sunos4) || defined(NeXT))
  414.       int modem_lines;
  415.   #endif
  416.       int result;
  417. ***************
  418. *** 670,682 ****
  419.       cfsetispeed( &t, B0 );
  420.   #endif
  421.   #ifdef BSD_SGTTY
  422. !     t.sg_ispeed = t.sg_ospeed = B0
  423.   #endif
  424.   
  425.       tio_set( fd, &t );
  426.       delay( msec_wait );
  427.       
  428. ! #ifdef sunos4
  429.       /* on SunOS, if you hangup via B0, the DTR line will *stay* low.
  430.        * So: enable it manually again.
  431.        */
  432. --- 711,723 ----
  433.       cfsetispeed( &t, B0 );
  434.   #endif
  435.   #ifdef BSD_SGTTY
  436. !     t.sg_ispeed = t.sg_ospeed = B0 ;
  437.   #endif
  438.   
  439.       tio_set( fd, &t );
  440.       delay( msec_wait );
  441.       
  442. ! #if (defined(sunos4) || defined(NeXT))
  443.       /* on SunOS, if you hangup via B0, the DTR line will *stay* low.
  444.        * So: enable it manually again.
  445.        */
  446. ***************
  447. *** 686,692 ****
  448.   #endif
  449.       result = tio_set( fd, &save_t );
  450.       
  451. ! #if (defined(M_UNIX) && defined(MAM_BUG)) || defined (sysV68)
  452.       /* some Unix variants apparently forget to raise DTR again
  453.        * after lowering it. Reopening the port fixes it. Crude, but works.
  454.        */
  455. --- 727,733 ----
  456.   #endif
  457.       result = tio_set( fd, &save_t );
  458.       
  459. ! #if (defined(M_UNIX) && defined(MAM_BUG))
  460.       /* some Unix variants apparently forget to raise DTR again
  461.        * after lowering it. Reopening the port fixes it. Crude, but works.
  462.        */
  463.