diff options
author | tron <tron@pkgsrc.org> | 2006-06-30 16:17:27 +0000 |
---|---|---|
committer | tron <tron@pkgsrc.org> | 2006-06-30 16:17:27 +0000 |
commit | 0d3db5691d3f816c96a220bbbaa2e0dfe3cf9c16 (patch) | |
tree | 6846bf9287cf2fb53c16548a4edd1da50339fbdf /net/bsddip | |
parent | 6e4eb9471d5286308fcc755d23708ecd966bcdb9 (diff) | |
download | pkgsrc-0d3db5691d3f816c96a220bbbaa2e0dfe3cf9c16.tar.gz |
Move "bsddip" package to "bsddip" directory.
Diffstat (limited to 'net/bsddip')
-rw-r--r-- | net/bsddip/DESCR | 22 | ||||
-rw-r--r-- | net/bsddip/Makefile | 21 | ||||
-rw-r--r-- | net/bsddip/PLIST | 17 | ||||
-rw-r--r-- | net/bsddip/distinfo | 8 | ||||
-rw-r--r-- | net/bsddip/patches/patch-aa | 154 | ||||
-rw-r--r-- | net/bsddip/patches/patch-ab | 175 | ||||
-rw-r--r-- | net/bsddip/patches/patch-ac | 69 |
7 files changed, 466 insertions, 0 deletions
diff --git a/net/bsddip/DESCR b/net/bsddip/DESCR new file mode 100644 index 00000000000..cf651cb041e --- /dev/null +++ b/net/bsddip/DESCR @@ -0,0 +1,22 @@ +What is DIP? + + +DIP is mainly a tool to establish a SLIP connection. It handles all +the necessary actions to set up the tty port and the modem, dial out +and finally build up a SLIP connection between the tty port and the +kernel. To do so, dip offers an own very simple command language (a +mostly complete description can be found in the man page). + +Dip can handle both incoming and outgoing connections using password +security for incoming connections. + +For more details, have a look at the man page! + +Author's comment: + +But what I want YOU to do is: Send me a postcard from your city/town. +My address: + Joachim Bartz + Burgstaetter Strasse 17 + 38678 Clausthal-Zellerfeld + Germany diff --git a/net/bsddip/Makefile b/net/bsddip/Makefile new file mode 100644 index 00000000000..29499de65e4 --- /dev/null +++ b/net/bsddip/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.1 2006/06/30 16:17:27 tron Exp $ + +DISTNAME= bsddip-1.02 +CATEGORIES= net +# +# the actual master site is almost out of reach for everybody +#MASTER_SITES= ftp://sun.rz.tu-clausthal.de/pub/bsddip/ +MASTER_SITES+= ${MASTER_SITE_LOCAL} +EXTRACT_SUFX= .tar.Z + +MAINTAINER= pkgsrc-users@NetBSD.org +COMMENT= Dialup IP program + +NOT_FOR_PLATFORM= Interix-*-* # no sl(4) device + +NO_SRC_ON_FTP= Already in MASTER_SITE_LOCAL + +NO_CONFIGURE= yes +MANCOMPRESSED_IF_MANZ= yes + +.include "../../mk/bsd.pkg.mk" diff --git a/net/bsddip/PLIST b/net/bsddip/PLIST new file mode 100644 index 00000000000..8ef023f67a8 --- /dev/null +++ b/net/bsddip/PLIST @@ -0,0 +1,17 @@ +@comment $NetBSD: PLIST,v 1.1 2006/06/30 16:17:27 tron Exp $ +sbin/dip +sbin/diplogin +lib/dip/dialout.dip.sample +lib/dip/ReadMe.HowTo +lib/dip/sample2.dip +lib/dip/diphosts +lib/dip/sample.dip +lib/dip/setup.sh.sample +lib/dip/ReadMe +lib/dip/sample1.dip +lib/dip/startup.sh.sample +man/cat8/dip.0 +man/cat8/diplogin.0 +man/man8/dip.8 +man/man8/diplogin.8 +@dirrm lib/dip diff --git a/net/bsddip/distinfo b/net/bsddip/distinfo new file mode 100644 index 00000000000..aa8ad870999 --- /dev/null +++ b/net/bsddip/distinfo @@ -0,0 +1,8 @@ +$NetBSD: distinfo,v 1.1 2006/06/30 16:17:27 tron Exp $ + +SHA1 (bsddip-1.02.tar.Z) = f938ba32fcbb958c6a9632502d6728cb0a8bac4c +RMD160 (bsddip-1.02.tar.Z) = 799b899cee5ef1b8a49c8a0929a2c4f0d17bcbab +Size (bsddip-1.02.tar.Z) = 78191 bytes +SHA1 (patch-aa) = 597aa71afc9cc8bcb38ad4be949d42630db0b840 +SHA1 (patch-ab) = 657e3dd81394df2d8789222776a14ce083a252b6 +SHA1 (patch-ac) = 0bf7e78142ef21167475fd9af4071494054016e9 diff --git a/net/bsddip/patches/patch-aa b/net/bsddip/patches/patch-aa new file mode 100644 index 00000000000..174d1855c1d --- /dev/null +++ b/net/bsddip/patches/patch-aa @@ -0,0 +1,154 @@ +$NetBSD: patch-aa,v 1.1 2006/06/30 16:17:27 tron Exp $ + +--- Makefile.orig Sat Jul 1 01:41:05 1995 ++++ Makefile Wed Jul 20 01:59:35 2005 +@@ -1,123 +1,39 @@ +-CC = gcc +- +-CCFLAG = -O2 +-DBFLAG = -ggdb -Wall +-LDFLAG = -N -s +- ++PROG = dip ++PROG1 = diplogin ++LINKS = ${BINDIR}/${PROG} ${BINDIR}/${PROG1} + VERSION = 1.01 + + BINTGT = dip +-BINTGT1 = diplogin +-BINDIR = /sbin/ +-BINGRP = bin +-BINOWN = bin +-BINMODE = 555 +- +-MANSRC = dip.8 +-MANTGT = dip.0 +-MANTGT1 = diplogin.0 +-MANDIR = /usr/share/man/cat8/ +-MANGRP = bin +-MANOWN = bin +-MANMODE = 444 ++BINDIR = ${PREFIX}/sbin + +-SMPDIR = /etc/dip.samples/ ++MAN = dip.8 ++MANDIR = ${PREFIX}/man ++MLINKS = dip.8 diplogin.8 ++MANINSTALL = maninstall catinstall ++ ++SAMPLES = samples/dialout.dip.sample samples/ReadMe.HowTo \ ++ samples/sample2.dip samples/diphosts \ ++ samples/sample.dip samples/setup.sh.sample \ ++ samples/ReadMe samples/sample1.dip \ ++ samples/startup.sh.sample ++ ++SMPDIR = ${PREFIX}/lib/dip + SMPGRP = bin + SMPOWN = bin +-SMPMODE = 755 ++SMPMODE = 644 + + # OWNSLEEP= -DUSEOWNSLEEP + +-OBJS = attach.o command.o config.o daemon.o dip.o login.o modem.o ppp.o\ +- slip.o term.o tty.o ++SRCS = attach.c command.c config.c daemon.c dip.c login.c modem.c ppp.c\ ++ slip.c term.c tty.c + + .ifdef (OWNSLEEP) +-OBJS += sleep.o +-.endif +- +- +-.SUFFIXES: .0 .1 .2 .3 .4 .5 .6 .7 .8 +- +- +-.8.0: +- @echo "nroff -mandoc $(.IMPSRC) > $(.TARGET)" +- @nroff -mandoc $(.IMPSRC) > $(.TARGET) || ( rm -f $(.TARGET) ; false ) +- +- +-.ifmake (debug) +-.c.o: dip.h $(.IMPSRC) +- $(CC) $(OWNSLEEP) $(DBFLAG) -c $(.IMPSRC) +-.else +-.c.o: dip.h $(.IMPSRC) +- $(CC) $(OWNSLEEP) $(CCFLAG) -c $(.IMPSRC) ++SRCS += sleep.c + .endif + ++afterinstall: ++ @if [ ! -d ${SMPDIR} ] ; then mkdir -p ${SMPDIR} ; fi ++ ${INSTALL} -c -o ${SMPOWN} -g ${SMPGRP} -m ${SMPMODE} \ ++ ${SAMPLES} ${SMPDIR} + +- +-all: dip +- +- +-install: dip maninstall +- install -c -s -o$(BINOWN) -g$(BINGRP) -m$(BINMODE) $(BINTGT) $(BINDIR) +- rm -f $(BINDIR)$(BINTGT1) +- ln $(BINDIR)$(BINTGT) $(BINDIR)$(BINTGT1) +- +- +-dip: dip.h $(OBJS) +- $(CC) $(OWNSLEEP) $(CCFLAG) $(LDFLAG) -o $(BINTGT) $(OBJS) +- +- +-debug: dip.h $(OBJS) +- $(CC) $(OWNSLEEP) $(DBFLAG) -o $(BINTGT) $(OBJS) +- +- +-maninstall: man +- install -c -o$(MANOWN) -g$(MANGRP) -m$(MANMODE) $(MANTGT) $(MANDIR) +- rm -f $(MANDIR)$(MANTGT1) +- ln $(MANDIR)$(MANTGT) $(MANDIR)$(MANTGT1) +- +- +-man: $(MANTGT) +- +- +-samples! +- @echo Installing sample files in $(SMPDIR)... +- @if [ -d $(SMPDIR) ] ; then \ +- echo The directory already exists! ; \ +- echo Aborting!!! ; \ +- false ; \ +- fi +- install -d -o$(BINOWN) -g$(BINGRP) -m$(SMPMODE) $(SMPDIR) +- install -c -o$(BINOWN) -g$(BINGRP) -m644 ./samples/* $(SMPDIR) +- install -c -o$(BINOWN) -g$(BINGRP) -m744 ./samples/*.sh.* $(SMPDIR) +- +-clean: +- rm -f $(BINTGT).core $(OBJS) +- +- +-clobber: clean +- rm -f $(BINTGT) $(MANTGT) +- +- +-uninstall: +- @if [ -f $(BINDIR)$(BINTGT1) ] ; then \ +- echo Removing $(BINDIR)$(BINTGT1) ; \ +- rm -f $(BINDIR)$(BINTGT1) ; \ +- fi +- @if [ -f $(BINDIR)$(BINTGT) ] ; then \ +- echo Removing $(BINDIR)$(BINTGT) ; \ +- rm -f $(BINDIR)$(BINTGT) ; \ +- fi +- @if [ -f $(MANDIR)$(MANTGT1) ] ; then \ +- echo Removing $(MANDIR)$(MANTGT1) ; \ +- rm -f $(MANDIR)$(MANTGT1) ; \ +- fi +- @if [ -f $(MANDIR)$(MANTGT) ] ; then \ +- echo Removing $(MANDIR)$(MANTGT) ; \ +- rm -f $(MANDIR)$(MANTGT) ; \ +- fi +- @if [ -d $(SMPDIR) ] ; then \ +- echo '' ; \ +- echo "Please remove $(SMPDIR) (and containing files) yourself!" ; \ +- echo '' ; \ +- fi +\ No newline at end of file ++.include <bsd.prog.mk> diff --git a/net/bsddip/patches/patch-ab b/net/bsddip/patches/patch-ab new file mode 100644 index 00000000000..5e797ade33a --- /dev/null +++ b/net/bsddip/patches/patch-ab @@ -0,0 +1,175 @@ +$NetBSD: patch-ab,v 1.1 2006/06/30 16:17:27 tron Exp $ + +--- tty.c.orig Sat Jul 1 01:41:05 1995 ++++ tty.c Sat Sep 9 08:37:14 1995 +@@ -140,9 +140,10 @@ + int tty_lock ( char *path, int mode ) + { + ++#define MAX_LOCK_ATTEMPTS 3 + struct passwd *pw; +- +- int fd; ++ char number[12], *temp_path; ++ int fd, i, saved_errno; + + + if ( mode ) /* locking on ? */ +@@ -152,32 +153,71 @@ + return 0; /* standard input */ + } + +- if ( saved_path != NULL ) ++ temp_path = (char*) malloc ( sizeof ( PATH_LOCKD ) + ++ strlen("TMP..") + 10); /* max PID */ ++ ++ (void) sprintf ( number, "%u", (unsigned)getpid() ); ++ (void) strcpy ( temp_path, PATH_LOCKD ); ++ (void) strcat ( temp_path, "TMP.." ); ++ (void) strcat ( temp_path, number ); ++ ++ if ( opt_debg ) ++ printf ( "DIP: tty: trying to create lock temp file %s\n", temp_path ); ++ if ( ( fd = open ( temp_path, O_CREAT|O_TRUNC|O_WRONLY, 0644 ) ) < 0) + { +- free ( saved_path ); +- saved_path = NULL; ++ (void) fprintf ( stderr, "DIP: tty: lock: (%s): %s\n", ++ temp_path, strerror ( errno ) ); ++ free(temp_path); ++ return -1; + } + ++ /* ++ * now enter our PID; ++ * Note: the 10 digits + newline are convention and cannot be changed ++ */ ++ (void) sprintf ( number, "%10u\n", getpid() ); ++ if ( opt_debg ) ++ printf ( "DIP: tty: writing \"%10u\" into lock temp file\n", getpid() ); ++ if ( write (fd, number, 11) != 11 ) ++ { ++ (void) fprintf ( stderr, "DIP: tty: lock write error: %s\n", ++ strerror ( errno ) ); ++ free(temp_path); ++ return -1; ++ } ++ (void) close ( fd ); ++ ++ free ( saved_path ); /* just in case [NB: free(NULL) is legal] */ + saved_path = (char*) malloc ( sizeof ( PATH_LOCKD ) + +- strlen ( path ) + 1 ); ++ strlen ( path ) + 3 ); + + (void) strcpy ( saved_path, PATH_LOCKD ); ++ (void) strcat ( saved_path, ".." ); + (void) strcat ( saved_path, path ); + +- +- if ( ( fd = creat ( saved_path, 0644 ) ) < 0) +- { +- if ( errno != EEXIST ) ++ if ( opt_debg ) ++ printf ( "DIP: tty: linking %s to %s\n", temp_path, saved_path ); ++ for ( i = 0; i < MAX_LOCK_ATTEMPTS; i++ ) + { +- (void) fprintf ( stderr, "DIP: tty: lock: (%s): %s\n", +- saved_path, strerror ( errno ) ); ++ /* now attempt to actually get the lock */ ++ if ( link ( temp_path, saved_path ) == 0 ) ++ break; ++ sleep(2 * (i + 1)); ++ } ++ saved_errno = errno; ++ (void) unlink ( temp_path ); ++ free(temp_path); ++ ++ if ( i >= MAX_LOCK_ATTEMPTS ) ++ { ++ /* did not get it */ ++ if ( saved_errno != EEXIST ) ++ (void) fprintf ( stderr, "DIP: tty: lock: (%s): %s\n", ++ saved_path, strerror ( saved_errno ) ); ++ else if ( opt_debg ) ++ printf ( "DIP: tty: lock attempt failed, EEXIST\n" ); ++ return -1; + } +- +- return -1; +- } +- +- (void) close ( fd ); +- + + /* + * Make sure UUCP owns the lockfile. Required by some packages. +@@ -215,7 +255,26 @@ + return 0; + } + ++/* ++ * Enter daemon's PID into the lock file; ++ * This is icky. ++ */ ++void tty_relock ( void ) ++{ ++ int fd; ++ char number[12]; + ++ if ( saved_path == NULL ) ++ return; ++ ++ (void) sprintf ( number, "%10u\n", (unsigned)getpid() ); ++ if ( opt_debg ) ++ printf ( "DIP: tty: rewriting lock file (PID = %u)\n", getpid() ); ++ if ( (fd = open ( saved_path, O_WRONLY, 0 )) == -1 ) ++ return; ++ (void) write ( fd, number, 11); ++ (void) close ( fd ); ++} + + /* + * Find a serial speed code in the table. +@@ -965,7 +1024,6 @@ + char *sp; + char path [ MAXPATHLEN ]; + +- + /* + * Try opening the TTY device. + */ +@@ -985,8 +1043,10 @@ + else + sp = name; + +- +- if ( ( fd = open ( path, O_RDWR | O_NONBLOCK ) ) < 0 ) ++ if ( tty_lock ( sp, 1 ) == -1 ) ++ return -1; ++ ++ if ( ( fd = open ( path, O_RDWR | O_NONBLOCK | O_EXCL ) ) < 0 ) + { + (void) fprintf ( stderr, "DIP: tty: open(%s, RW): %s\n", + path, strerror ( errno ) ); +@@ -1118,10 +1178,4 @@ + { + return 0 ; + } +- +- +- /* +- * OK, all done. Lock this terminal line. +- */ +- return tty_lock ( sp, 1 ); + } +--- daemon.c.orig Sat Jul 1 01:41:05 1995 ++++ daemon.c Sat Sep 9 08:20:00 1995 +@@ -168,6 +168,8 @@ + openlog ( "DIP", LOG_PID, LOG_DAEMON ); + } + ++ /* note the race condition here; ick! */ ++ tty_relock(); + + (void) signal ( SIGALRM, sig_catcher ); + (void) alarm ( mydip.timeout ); diff --git a/net/bsddip/patches/patch-ac b/net/bsddip/patches/patch-ac new file mode 100644 index 00000000000..bda703c39af --- /dev/null +++ b/net/bsddip/patches/patch-ac @@ -0,0 +1,69 @@ +$NetBSD: patch-ac,v 1.1 2006/06/30 16:17:27 tron Exp $ + +--- dip.h.orig 1995-07-01 00:41:05.000000000 +0100 ++++ dip.h 2006-06-30 17:10:38.000000000 +0100 +@@ -43,17 +43,40 @@ + #include <string.h> + #include <errno.h> + #include <syslog.h> +-#include <varargs.h> + #include <sys/param.h> + #include <sys/termios.h> + #include <sys/types.h> + #include <pwd.h> + #include <signal.h> + #include <sys/socket.h> ++#include <sys/time.h> + #include <net/if.h> ++#include <netinet/in.h> ++#ifdef __FreeBSD__ ++#if __FreeBSD__ >= 2 ++#include <osreldate.h> ++#endif ++#if __FreeBSD_version >= 300000 ++#include <net/if_var.h> ++#include <sys/mbuf.h> ++#include <netinet/in_systm.h> ++#include <netinet/ip.h> ++#include <net/slcompress.h> ++#endif ++#endif /*__FreeBSD__*/ + #include <net/slip.h> ++#if defined(__DragonFly__) ++#include <net/if_var.h> ++#include <sys/mbuf.h> ++#include <netinet/in_systm.h> ++#include <netinet/ip.h> ++#include <net/slcompress.h> ++#include <net/sl/if_slvar.h> ++#else ++#if !defined(__NetBSD__) + #include <net/if_slvar.h> +-#include <netinet/in.h> ++#endif ++#endif + #include <arpa/inet.h> + #include <netdb.h> + extern int h_errno; +@@ -121,7 +144,7 @@ + /* + * Pfad- und Dateinamen-Konstanten + */ +-#define PATH_LOCKD "/var/spool/uucp/LCK.." ++#define PATH_LOCKD "/var/spool/lock/LCK" + #define PATH_ETC_DIPHOSTS "/etc/diphosts" + #define PATH_BIN_IFCONFIG "/sbin/ifconfig" + #define PATH_BIN_ROUTE "/sbin/route" +@@ -135,7 +158,6 @@ + /* + * Extern benoetigte Variablen + */ +-extern int errno; + + extern short opt_debg; /* Debugging-output-flag */ + extern short opt_verb; /* Verbose-flag */ +@@ -231,3 +253,4 @@ + int tty_flush ( void ); + int tty_close ( void ); + int tty_open ( char * ); ++void tty_relock ( void ); |