[comp.protocols.tcp-ip] more on ppp...a followup to my earlier message...

kannan@OAR.NET ("Kannan Varadhan") (01/17/91)

A few people have sent me mail saying that they were getting the
setsid() stuff, and that their code does have perror()
etc. and  that they are seeing the same problems.  Well, it turns out
that Karl Fox just put in a new version of ppp on tut the other day.
Please pick that up and try it out.  The stuff on tut.cis.ohio-state.edu
[128.146.8.60 if you don't know about things like DNS..and fie on you,
you ^%!@$#&^#@ for not using the DNS :-)] is....

	pub/ppp-sparc4.1.tar.Z		[The whole patched shebang
	pub/ppp-sparc4.1.shar.Z		[Just the patches, and K. Fox's kit.

The code fragments should look as follows....

valhalla ppp. rcsdiff -r1.1 -c ppp.c
===================================================================
RCS file: RCS/ppp.c,v
retrieving revision 1.1
diff -c -r1.1 ppp.c
*** /tmp/,RCSt1a03335   Wed Jan 16 15:22:18 1991
- --- ppp.c       Mon Dec 31 12:05:48 1990
***************
*** 105,110 ****
- --- 112,120 ----
  #endif
  int initfdflags;              /* Initial file descriptor flags */
  int pid;                      /* Our pid */
+ #ifdef sun
+ int   pgrpid;                 /* Process Group ID */
+ #endif
  char user[80];                        /* User name */


***************
*** 371,386 ****
      pid = getpid();
      if (debug)
        printf("Pid %d.\n", pid);
! /*    if (ioctl(fd, TIOCSPGRP, &pid) < 0) {
!       perror("ppp: ioctl(TIOCSPGRP)");
!       exit(1);
!     }*/
!     { int a;
!     if ((a=tcsetpgrp(fd, pid)) < 0) {
!       printf("ppp: errno=%d\n", errno);
        perror("ppp: tcsetpgrp()");
        exit(1);
!     }}

      /*
       * Compute mask of all interesting signals and install signal handlers
- --- 381,401 ----
      pid = getpid();
      if (debug)
        printf("Pid %d.\n", pid);
!
! # if defined(sun) && defined(SunOS) && SunOS >= 41
!     if ((pgrpid = setsid()) < 0) {
!       pgrpid = getpgrp (0);
!       }
!     if (tcsetpgrp(fd, pgrpid) < 0) {
        perror("ppp: tcsetpgrp()");
        exit(1);
!       }
! # else
!     if (ioctl(fd, TIOCSPGRP, &pid) < 0) {
!       perror("ppp: ioctl(TIOCSPGRP)");
!       exit(1);
!       }
! # endif

      /*
       * Compute mask of all interesting signals and install signal handlers
valhalla ppp.

FYI,


Kannan

-=-
Kannan Varadhan, Internet Engineer (OARNet),		+1 614 292 4137
Ohio Supercomputer Center, 1224, Kinnear Rd.,  Columbus, OH 43212