Pcomm patches for Xenix 2.3.1

Jonathan Bayer jbayer at ispi.UUCP
Sun Nov 20 04:38:42 AEST 1988


I have received a number of inquiries regarding my patches to pcomm to
make it work on Xenix 386, v 2.3.1.

These patches apply  to Pcomm 1.1 with all five official patches
applied.  If you are running Xenix you should apply the other patches I
posted first.


THIS IS NOT AN OFFICIAL PATCH


The following patches fixes pcomm to work properly with the version
of HDB that comes with SCO Xenix 2.3.1.  The patch will work for any
HDB system since the one line that is specific to SCO Xenix is ifdef'ed
in place.

A word of explaination:  SCO uses two device names to refer to
the same modem port, one for modem control, and one for no modem
control.  This created problems in the past since when one port was
locked the other was not.  The port names all end with a letter, with
the case of the letter indicating whether modem control is active or
not.  A capitol letter indicates modem control.  SCO has specified in
the new HDB that the last letter should be folded into lower case,
thereby ensuring that when one port is locked both of them are.  The
below patch adds this to pcomm.



- - - - - - - patch starts here - - - - - - - - - -
*** ../oldsrc/config.h	Sat Nov 19 13:13:52 1988
--- config.h	Wed Nov 16 22:42:10 1988
***************
*** 45,51 ****
  #define	LOCK_DIR	"/usr/spool/uucp"
  
  /* Do the lock files use ASCII encoded PID's? */
! #undef	ASCII_PID
  
  /* Should Pcomm optimize redialing by keeping the TTY port open */
  /* #define	KEEP_PORT */
--- 45,52 ----
  #define	LOCK_DIR	"/usr/spool/uucp"
  
  /* Do the lock files use ASCII encoded PID's? */
! /* #undef	ASCII_PID */
! #define		ASCII_PID
  
  /* Should Pcomm optimize redialing by keeping the TTY port open */
  /* #define	KEEP_PORT */
*** ../oldsrc/port.c	Sat Nov 19 13:13:53 1988
--- port.c	Fri Nov 18 23:59:07 1988
***************
*** 110,115 ****
--- 110,120 ----
  	while (list[i] != -1) {
  					/* create a lock file name */
  		sprintf(file, "%s/LCK..%s", LOCK_DIR, modem->tty[list[i]]);
+ #ifdef	ASCII_PID
+ #ifdef	M_XENIX
+ 		file[strlen(file) - 1] = tolower(file[strlen(file) - 1]);
+ #endif
+ #endif
  #ifdef DEBUG
  		fprintf(stderr, "get_port: checking '/dev/%s'\n", modem->tty[list[i]]);
  #endif /* DEBUG */



More information about the Comp.unix.xenix mailing list