X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fsys-sunos4.c;h=ac24eb184364cf2c73b13123b08e44dcd103f5e1;hb=24af3d4d6dbf452f8acaa1a15a9e08f96a0e6eb2;hp=8724de55e950486800dc3abba6fe478d3d7bbe9d;hpb=26a7a28f129d72feaa08ef589e9a49aafd16d984;p=ppp.git diff --git a/pppd/sys-sunos4.c b/pppd/sys-sunos4.c index 8724de5..ac24eb1 100644 --- a/pppd/sys-sunos4.c +++ b/pppd/sys-sunos4.c @@ -26,7 +26,7 @@ */ #ifndef lint -static char rcsid[] = "$Id: sys-sunos4.c,v 1.7 1997/03/04 03:43:54 paulus Exp $"; +static char rcsid[] = "$Id: sys-sunos4.c,v 1.10 1998/11/07 06:59:31 paulus Exp $"; #endif #include @@ -206,9 +206,10 @@ sys_close() /* * sys_check_options - check the options that the user specified */ -void +int sys_check_options() { + return 1; } @@ -603,7 +604,7 @@ output(unit, p, len) struct pollfd pfd; if (debug) - log_packet(p, len, "sent "); + log_packet(p, len, "sent ", LOG_DEBUG); data.len = len; data.buf = (caddr_t) p; @@ -738,6 +739,7 @@ ppp_send_config(unit, mtu, asyncmap, pcomp, accomp) int pcomp, accomp; { int cf[2]; + struct ifreq ifr; link_mtu = mtu; if (strioctl(pppfd, PPPIO_MTU, &mtu, sizeof(mtu), 0) < 0) { @@ -753,6 +755,14 @@ ppp_send_config(unit, mtu, asyncmap, pcomp, accomp) if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) { syslog(LOG_ERR, "Couldn't set prot/AC compression: %m"); } + + /* set mtu for ip as well */ + memset(&ifr, 0, sizeof(ifr)); + strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)); + ifr.ifr_metric = link_mtu; + if (ioctl(sockfd, SIOCSIFMTU, &ifr) < 0) { + syslog(LOG_ERR, "Couldn't set IP MTU: %m"); + } } /* @@ -987,10 +997,12 @@ sifaddr(u, o, h, m) if (ioctl(sockfd, SIOCSIFDSTADDR, &ifr) < 0) { syslog(LOG_ERR, "Couldn't set remote IP address: %m"); } +#if 0 /* now done in ppp_send_config */ ifr.ifr_metric = link_mtu; if (ioctl(sockfd, SIOCSIFMTU, &ifr) < 0) { syslog(LOG_ERR, "Couldn't set IP MTU: %m"); } +#endif ifaddrs[0] = o; ifaddrs[1] = h; @@ -1315,6 +1327,15 @@ strioctl(fd, cmd, ptr, ilen, olen) return 0; } +/* + * Use the hostid as part of the random number seed. + */ +int +get_host_seed() +{ + return gethostid(); +} + /* * Code for locking/unlocking the serial device. * This code is derived from chat.c.