Date: Sun, 25 Jul 1999 22:59:41 +0100 From: Josef Karthauser <joe@pavilion.net> To: Brian Somers <brian@Awfulhak.org> Cc: Mark Thomas <thomas@clark.net>, freebsd-current@FreeBSD.org, Wayne Self <wself@cdrom.com> Subject: Re: userland ppp - startup Message-ID: <19990725225941.B74812@pavilion.net> In-Reply-To: <199907072102.WAA19958@dev.lan.awfulhak.org>; from Brian Somers on Wed, Jul 07, 1999 at 10:02:44PM %2B0100 References: <19990707103746.A30024@pavilion.net> <199907072102.WAA19958@dev.lan.awfulhak.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii On Wed, Jul 07, 1999 at 10:02:44PM +0100, Brian Somers wrote: > > This aside, I think there are more bits required for the patches :*1 > > rc.conf.5 needs to be updated - that's the easy bit. Done - see attached. > I think we also need a src/etc/ppp/ppp.conf that installs with 0600 > permissions at installation time. This file would have a default > and a papchap entry in it - that's where the url for Waynes ppp.conf > comes in - its contents are probably what we're after. Older versions > of src/etc/Makefile installed ppp.conf, so it should be easy to do that > side of things. Done - attached is Waynes ppp.conf and a patch for /usr/src/etc/Makefile. > Sysinstall however is also capable of writing ppp.conf. It would > need to be smart enough to update the default one with the lines that > it wants to use (just appending an ``install'' label with the > necessary bits is probably the best thing to do). This answers your > other question..... src/release/sysinstall/network.c - search for > ppp.conf. That's how sysinstall does it :-) Attached is network.c.patch, which should do the right thing. It simply appends to /etc/ppp/ppp.conf with an 'install' profile, and also sets the relevent rc.conf variables so that the configuration survives across reboots. (This should probably be a little more intelligent, but lets get the functionality in first and "better" it up later.) > Ha, and you thought it'd be straight forward ;^P Of course not ;). Joe -- Josef Karthauser FreeBSD: How many times have you booted today? Technical Manager Viagra for your server (http://www.uk.freebsd.org) Pavilion Internet plc. [joe@pavilion.net, joe@uk.freebsd.org, joe@tao.org.uk] --VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="usr_src_etc_ppp_ppp.conf" ################################################################# # PPP Sample Configuration File # Originally written by Toshiharu OHNO # Simplified 5/14/1999 by wself@cdrom.com # # $Id$ ################################################################# default: # # Instructions: # # edit the next three lines and replace the items in caps with # the values which have been assigned by your ISP. # set phone PHONE_NUM set authname USERNAME set authkey PASSWORD # # Make sure that "device" references the correct serial port # for your modem. (cuaa0 = COM1, cuaa1 = COM2) # set device /dev/cuaa1 set log Phase Chat LCP IPCP CCP tun command set speed 115200 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CONNECT" set timeout 120 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0 add default HISADDR enable dns --VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="usr_src_etc_Makefile.patch" Index: etc/Makefile =================================================================== RCS file: /home/ncvs/src/etc/Makefile,v retrieving revision 1.201 diff -u -r1.201 Makefile --- Makefile 1999/07/10 18:02:12 1.201 +++ Makefile 1999/07/25 17:46:57 @@ -24,6 +24,7 @@ BSD.var.dist BSD.x11.dist NAMEDB= PROTO.localhost.rev named.conf named.root make-localhost PPPCNF= ppp.deny ppp.shells.sample +PPPCF2= ppp.conf NOSPAM= Makefile README @@ -79,6 +80,8 @@ ${NAMEDB} ${DESTDIR}/etc/namedb cd ${.CURDIR}/ppp; ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 644 \ ${PPPCNF} ${DESTDIR}/etc/ppp + cd ${.CURDIR}/ppp; ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 600 \ + ${PPPCF2} ${DESTDIR}/etc/ppp cd ${.CURDIR}/mail; ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 644 \ ${NOSPAM} ${DESTDIR}/etc/mail ${INSTALL} -c -o ${BINOWN} -g operator -m 664 /dev/null \ --VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="usr_src_share_man_man5_rc.conf.5.patch" Index: rc.conf.5 =================================================================== RCS file: /home/ncvs/src/share/man/man5/rc.conf.5,v retrieving revision 1.36 diff -u -r1.36 rc.conf.5 --- rc.conf.5 1999/07/16 09:22:01 1.36 +++ rc.conf.5 1999/07/25 17:19:02 @@ -218,6 +218,30 @@ .Ed Then note that alias4 would \fBnot\fR be added since the search would stop with the missing alias3 entry. +.It Ar ppp_enable +(bool) If set to +.Ar YES , +run the +.Xr ppp 8 +daemon. +.It Ar ppp_mode +(str) Mode in which to run the +.Xr ppp 8 +daemon. Accepted modes are +.Ar auto , ddial , direct +and +.Ar dedicated . +See the manual for a full description. +.It Ar ppp_alias +(bool) If set to +.Ar YES , +enables packet aliasing. Used in conjunction with +.Ar gateway_enable +allows hosts on private network addresses access the Internet using +this host as a network address translating router. +.It Ar ppp_profile +(str) The name of the profile to use from +.Ar /etc/ppp/ppp.conf . .It Ar rc_conf_files (str) This option is used to specify a list of files that will override the settings in --VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="usr_src_release_sysinstall_sysinstall.h" Index: sysinstall.h =================================================================== RCS file: /home/ncvs/src/release/sysinstall/sysinstall.h,v retrieving revision 1.171 diff -u -r1.171 sysinstall.h --- sysinstall.h 1999/07/19 10:06:17 1.171 +++ sysinstall.h 1999/07/25 21:24:15 @@ -148,6 +148,8 @@ #define VAR_PCNFSD "pcnfsd" #define VAR_PKG_TMPDIR "PKG_TMPDIR" #define VAR_PORTS_PATH "ports" +#define VAR_PPP_ENABLE "ppp_enable" +#define VAR_PPP_PROFILE "ppp_profile" #define VAR_RELNAME "releaseName" #define VAR_ROOT_SIZE "rootSize" #define VAR_ROUTER "router" --VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="usr_src_release_sysinstall_network.c" Index: network.c =================================================================== RCS file: /home/ncvs/src/release/sysinstall/network.c,v retrieving revision 1.37 diff -u -r1.37 network.c --- network.c 1999/07/18 10:18:05 1.37 +++ network.c 1999/07/25 21:56:15 @@ -246,7 +246,7 @@ close(fd2); } if (!Fake) - fp = fopen("/etc/ppp/ppp.conf", "w"); + fp = fopen("/etc/ppp/ppp.conf", "a"); else fp = fopen("/dev/stderr", "w"); if (!fp) { @@ -268,7 +268,7 @@ dialog_clear_norefresh(); pulse = dialog_yesno("", "Does your telephone line support tone dialing?", -1, -1); } - fprintf(fp, "default:\n"); + fprintf(fp, "\ninstall:\n"); fprintf(fp, " set speed %s\n", speed); fprintf(fp, " set device %s\n", devp->devname); fprintf(fp, " set ifaddr %s %s\n", myaddr, provider); @@ -282,10 +282,14 @@ fprintf(fp, " set authkey %s\n", authkey); fprintf(fp, " set phone %s\n", phone); } - if (fchmod(fileno(fp), 0640) != 0) + if (fchmod(fileno(fp), 0600) != 0) msgConfirm("Warning: Failed to fix permissions on /etc/ppp/ppp.conf !"); fclose(fp); + /* Make the ppp config persistant */ + variable_set2(VAR_PPP_ENABLE, "YES", 0); + variable_set2(VAR_PPP_PROFILE, "install", 0); + if (!Fake && !file_readable("/dev/tun0") && mknod("/dev/tun0", 0600 | S_IFCHR, makedev(52, 0))) { msgConfirm("Warning: No /dev/tun0 device. PPP will not work!"); return 0; @@ -318,7 +322,7 @@ } else msgDebug("ppp: Unable to get the terminal attributes!\n"); - execlp("ppp", "ppp", (char *)NULL); + execlp("ppp", "ppp install", (char *)NULL); msgDebug("PPP process failed to exec!\n"); exit(1); } --VbJkn9YxBvnuCH5J-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990725225941.B74812>