--- Makefile +++ Makefile 1996/08/14 12:39:35 @@ -13,7 +13,7 @@ OPTDEFS= -DSYSLOG -DVEND_CMU -DDHCP -DDYNAMIC -DDEBUG # Uncomment and edit this to choose the facility code used for syslog. -# LOG_FACILITY= "-DLOG_BOOTP=LOG_LOCAL2" +LOG_FACILITY= "-DLOG_BOOTP=LOG_DAEMON" # SYStem DEFinitions: # Either uncomment some of the following, or do: @@ -39,7 +39,7 @@ INSTALL=/usr/bin/install DESTDIR= BINDIR=/usr/sbin -MANDIR=/usr/local/man +MANDIR=/usr/man CFLAGS= $(OPTDEFS) $(SYSDEFS) $(FILEDEFS) $(MOREDEFS) PROGS= bootpd bootpef bootpgw bootptest @@ -49,7 +49,7 @@ system: install -install: $(PROGS) +install: $(PROGS) install.man -for f in $(PROGS) ;\ do \ $(INSTALL) -c -s $$f $(DESTDIR)$(BINDIR) ;\ @@ -102,7 +102,7 @@ # Linux 1.1.80+ linux: - $(MAKE) SYSDEFS="-O6 -Wall -fomit-frame-pointer" \ + $(MAKE) SYSDEFS="-O6 -Wall -fomit-frame-pointer -pipe" \ SYSLIBS="" \ FILEDEFS='-DCONFIG_FILE=\"/etc/bootptab\" \ -DDUMPTAB_FILE=\"/tmp/bootpd.dump\"' --- Makefile.Linux +++ Makefile.Linux 1996/08/14 12:39:35 @@ -0,0 +1,18 @@ +# +# +# Makefile.Linux to integrate package into source tree of S.u.S.E.-Linux +# +# Copyright (C) 1996 S.u.S.E. GmbH Fuerth, Germany. +# +# Please send bug-fixes or comments to feedback@suse.de. +# +# Author: Florian La Roche +# +# + +compile: + make linux + +install: + make install + --- bootpd.c +++ bootpd.c 1996/08/14 12:39:35 @@ -1630,10 +1630,10 @@ return 0; /* Not mine, discard! */ switch (dhcp) { - case 1 : len = dhcp_discover(bp,hp,vp,bytesleft-1); break; - case 3 : len = dhcp_request(bp,hp,vp,bytesleft-1); break; - case 4 : len = dhcp_decline(bp,hp,vp,bytesleft-1); break; - case 7 : len = dhcp_release(bp,hp,vp,bytesleft-1); break; + case 1 : len = dhcp_discover(bp,hp,vp,bytesleft); break; + case 3 : len = dhcp_request(bp,hp,vp,bytesleft); break; + case 4 : len = dhcp_decline(bp,hp,vp,bytesleft); break; + case 7 : len = dhcp_release(bp,hp,vp,bytesleft); break; default : report(LOG_NOTICE,"Unknown DHCP request (%d)",dhcp); return 0; } @@ -1650,7 +1650,7 @@ * function (which is shared with bootpef.c). * Keep back one byte for the TAG_END. */ - len = dovend_rfc1497(hp, vp, bytesleft - 1); + len = dovend_rfc1497(hp, vp, bytesleft); vp += len; bytesleft -= len; #ifdef DHCP @@ -1769,7 +1769,8 @@ *vp++ = 2; /* DHCPOFFER */ len += 3; - len += dhcp_lease(bp,hp,&vp); + if (hp->dhcp_lease) + len += dhcp_lease(bp,hp,&vp); *vp++ = TAG_DHCP_SERVERID; *vp++ = 4; @@ -1829,7 +1830,8 @@ *vp++ = 5; len += 3; - len += dhcp_lease(bp,hp,&vp); + if (hp->dhcp_lease) + len += dhcp_lease(bp,hp,&vp); *vp++ = TAG_DHCP_SERVERID; /* Server id */ *vp++ = 4; --- dovend.c +++ dovend.c 1996/08/14 12:39:35 @@ -151,7 +151,7 @@ if (insert_ip(TAG_NIS_SERVER, hp->nis_server, &vp, &bytesleft)) - NEED(8, "ds"); + NEED(8, "ys"); } if (hp->flags.nis_domain) { /* @@ -159,7 +159,7 @@ * TAG_NIS_DOMAIN and length. */ len = strlen(hp->nis_domain->string); - NEED((len + 2), "dn"); + NEED((len + 2), "yd"); *vp++ = TAG_NIS_DOMAIN; *vp++ = (byte) (len & 0xFF); bcopy(hp->nis_domain->string, vp, len); @@ -191,7 +191,7 @@ if (insert_ip(TAG_NTP_SERVER, hp->ntp_server, &vp, &bytesleft)) - NEED(8, "ts"); + NEED(8, "nt"); } /* * I wonder: If the hostname were "promoted" into the BOOTP --- dumptab.c +++ dumptab.c 1996/08/14 12:39:35 @@ -150,7 +150,7 @@ if (hp->flags.bootsize_auto) { fprintf(fp, "auto:"); } else { - fprintf(fp, "%d:", hp->bootsize); + fprintf(fp, "%ld:", hp->bootsize); } } if (hp->flags.cookie_server) { @@ -218,10 +218,10 @@ fprintf(fp, ":"); } if (hp->flags.msg_size) { - fprintf(fp, "\\\n\t:ms=%d:", hp->msg_size); + fprintf(fp, "\\\n\t:ms=%ld:", hp->msg_size); } if (hp->flags.min_wait) { - fprintf(fp, "\\\n\t:mw=%d:", hp->min_wait); + fprintf(fp, "\\\n\t:mw=%ld:", hp->min_wait); } if (hp->flags.name_server) { fprintf(fp, "\\\n\t:ns="); --- hwaddr.c +++ hwaddr.c 1996/08/14 12:39:35 @@ -22,6 +22,7 @@ #include /* for struct ifnet in net/if_arp.h */ #endif +#include #include #include @@ -117,7 +118,7 @@ char *p; bzero((caddr_t) &arpreq, sizeof(arpreq)); - arpreq.arp_flags = ATF_INUSE | ATF_COM; + arpreq.arp_flags = ATF_COM; /* Set up the protocol address. */ arpreq.arp_pa.sa_family = AF_INET; --- print-bootp.c +++ print-bootp.c 1996/08/14 12:39:35 @@ -120,7 +120,7 @@ printf(" hops:%d", bp->bp_hops); if (bp->bp_xid) - printf(" xid:%d", ntohl(bp->bp_xid)); + printf(" xid:%ld", ntohl(bp->bp_xid)); if (bp->bp_secs) printf(" secs:%d", ntohs(bp->bp_secs)); @@ -341,7 +341,7 @@ case 'l': /* Long words */ while (len >= 4) { bcopy((char *) bp, (char *) &ul, 4); - printf("%d", ntohl(ul)); + printf("%ld", ntohl(ul)); bp += 4; len -= 4; if (len) printf(",");