aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Somers <brian@FreeBSD.org>1998-08-29 23:02:42 +0000
committerBrian Somers <brian@FreeBSD.org>1998-08-29 23:02:42 +0000
commit131ef891c78e6586ab54f1f5df34cdf8fb43976d (patch)
tree55f1b40cebb8829ea108534b51556a5fdc35e4cb
parent080a2247c2b4b92bb54b0062483edb7623423057 (diff)
Notes
-rw-r--r--usr.sbin/ppp/command.c18
-rw-r--r--usr.sbin/ppp/ppp.863
-rw-r--r--usr.sbin/ppp/ppp.8.m463
3 files changed, 109 insertions, 35 deletions
diff --git a/usr.sbin/ppp/command.c b/usr.sbin/ppp/command.c
index a36d5d484cf5..fc9e26ebb3a9 100644
--- a/usr.sbin/ppp/command.c
+++ b/usr.sbin/ppp/command.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: command.c,v 1.163 1998/08/29 18:37:02 brian Exp $
+ * $Id: command.c,v 1.164 1998/08/29 23:02:39 brian Exp $
*
*/
#include <sys/types.h>
@@ -127,7 +127,7 @@
#define NEG_DNS 50
const char Version[] = "2.0";
-const char VersionDate[] = "$Date: 1998/08/29 18:37:02 $";
+const char VersionDate[] = "$Date: 1998/08/29 23:02:39 $";
static int ShowCommand(struct cmdargs const *);
static int TerminalCommand(struct cmdargs const *);
@@ -376,10 +376,22 @@ expand(char **nargv, int argc, char const *const *oargv, struct bundle *bundle)
nargv[0] = strdup(oargv[0]);
for (arg = 1; arg < argc; arg++) {
- nargv[arg] = subst(strdup(oargv[arg]), "HISADDR",
+ nargv[arg] = strdup(oargv[arg]);
+ nargv[arg] = subst(nargv[arg], "HISADDR",
inet_ntoa(bundle->ncp.ipcp.peer_ip));
+ nargv[arg] = subst(nargv[arg], "AUTHNAME", bundle->cfg.auth.name);
nargv[arg] = subst(nargv[arg], "INTERFACE", bundle->ifp.Name);
nargv[arg] = subst(nargv[arg], "MYADDR", inet_ntoa(bundle->ncp.ipcp.my_ip));
+ nargv[arg] = subst(nargv[arg], "USER", bundle->ncp.mp.peer.authname);
+ nargv[arg] = subst(nargv[arg], "PEER_ENDDISC",
+ mp_Enddisc(bundle->ncp.mp.peer.enddisc.class,
+ bundle->ncp.mp.peer.enddisc.address,
+ bundle->ncp.mp.peer.enddisc.len));
+ nargv[arg] = subst(nargv[arg], "ENDDISC",
+ mp_Enddisc(bundle->ncp.mp.cfg.enddisc.class,
+ bundle->ncp.mp.cfg.enddisc.address,
+ bundle->ncp.mp.cfg.enddisc.len));
+ nargv[arg] = subst(nargv[arg], "LABEL", bundle_GetLabel(bundle));
}
nargv[arg] = NULL;
}
diff --git a/usr.sbin/ppp/ppp.8 b/usr.sbin/ppp/ppp.8
index dd9a59389165..aa29625a1fca 100644
--- a/usr.sbin/ppp/ppp.8
+++ b/usr.sbin/ppp/ppp.8
@@ -1,4 +1,4 @@
-.\" $Id: ppp.8,v 1.119 1998/08/25 17:48:43 brian Exp $
+.\" $Id: ppp.8,v 1.120 1998/08/25 17:48:55 brian Exp $
.Dd 20 September 1995
.Os FreeBSD
.Dt PPP 8
@@ -2343,15 +2343,47 @@ which comes with the source distribution.
.It [!]bg Ar command
The given
.Ar command
-is executed in the background. Any of the pseudo arguments
-.Dv HISADDR ,
-.Dv INTERFACE
-and
-.Dv MYADDR
-will be replaced with the appropriate values. If you wish to pause
+is executed in the background with the following words replaced:
+.Bl -tag -width PEER_ENDDISC
+.It Li AUTHNAME
+This is replaced with the local
+.Ar authname
+value. See the
+.Dq set authname
+command below.
+.It Li ENDDISC
+This is replaced with the local endpoint discriminator value. See the
+.Dq set enddisc
+command below.
+.It Li HISADDR
+This is replaced with the peers IP number.
+.It Li INTERFACE
+This is replaced with the name of the interface that's in use.
+.It Li LABEL
+This is replaced with the last label name used. A label may be specified
+on the
+.Nm
+command line, via the
+.Dq load
+or
+.Dq dial
+commands and in the
+.Pa ppp.secret
+file.
+.It Li MYADDR
+This is replaced with the IP number assigned to the local interface.
+.It Li PEER_ENDDISC
+This is replaced with the value of the peers endpoint discriminator.
+.It Li USER
+This is replaced with the username that has been authenticated with PAP or
+CHAP. Normally, this variable is assigned only in -direct mode. This value
+is available irrespective of whether utmp logging is enabled.
+.El
+.Pp
+If you wish to pause
.Nm
while the command executes, use the
-.Dv shell
+.Dq shell
command instead.
.It clear modem|ipcp Op current|overall|peak...
Clear the specified throughput values at either the
@@ -3351,14 +3383,13 @@ is not specified a shell is invoked according to the
.Dv SHELL
environment variable. Otherwise, the given
.Ar command
-is executed. Any of the pseudo arguments
-.Dv HISADDR ,
-.Dv INTERFACE
-and
-.Dv MYADDR
-will be replaced with the appropriate values. Use of the ! character
-requires a following space as with any other commands. You should note
-that this command is executed in the foreground -
+is executed. Word replacement is done in the same way as for the
+.Dq !bg
+commanad as described above.
+.Pp
+Use of the ! character
+requires a following space as with any of the other commands. You should
+note that this command is executed in the foreground -
.Nm
will not continue running until this process has exited. Use the
.Dv bg
diff --git a/usr.sbin/ppp/ppp.8.m4 b/usr.sbin/ppp/ppp.8.m4
index dd9a59389165..aa29625a1fca 100644
--- a/usr.sbin/ppp/ppp.8.m4
+++ b/usr.sbin/ppp/ppp.8.m4
@@ -1,4 +1,4 @@
-.\" $Id: ppp.8,v 1.119 1998/08/25 17:48:43 brian Exp $
+.\" $Id: ppp.8,v 1.120 1998/08/25 17:48:55 brian Exp $
.Dd 20 September 1995
.Os FreeBSD
.Dt PPP 8
@@ -2343,15 +2343,47 @@ which comes with the source distribution.
.It [!]bg Ar command
The given
.Ar command
-is executed in the background. Any of the pseudo arguments
-.Dv HISADDR ,
-.Dv INTERFACE
-and
-.Dv MYADDR
-will be replaced with the appropriate values. If you wish to pause
+is executed in the background with the following words replaced:
+.Bl -tag -width PEER_ENDDISC
+.It Li AUTHNAME
+This is replaced with the local
+.Ar authname
+value. See the
+.Dq set authname
+command below.
+.It Li ENDDISC
+This is replaced with the local endpoint discriminator value. See the
+.Dq set enddisc
+command below.
+.It Li HISADDR
+This is replaced with the peers IP number.
+.It Li INTERFACE
+This is replaced with the name of the interface that's in use.
+.It Li LABEL
+This is replaced with the last label name used. A label may be specified
+on the
+.Nm
+command line, via the
+.Dq load
+or
+.Dq dial
+commands and in the
+.Pa ppp.secret
+file.
+.It Li MYADDR
+This is replaced with the IP number assigned to the local interface.
+.It Li PEER_ENDDISC
+This is replaced with the value of the peers endpoint discriminator.
+.It Li USER
+This is replaced with the username that has been authenticated with PAP or
+CHAP. Normally, this variable is assigned only in -direct mode. This value
+is available irrespective of whether utmp logging is enabled.
+.El
+.Pp
+If you wish to pause
.Nm
while the command executes, use the
-.Dv shell
+.Dq shell
command instead.
.It clear modem|ipcp Op current|overall|peak...
Clear the specified throughput values at either the
@@ -3351,14 +3383,13 @@ is not specified a shell is invoked according to the
.Dv SHELL
environment variable. Otherwise, the given
.Ar command
-is executed. Any of the pseudo arguments
-.Dv HISADDR ,
-.Dv INTERFACE
-and
-.Dv MYADDR
-will be replaced with the appropriate values. Use of the ! character
-requires a following space as with any other commands. You should note
-that this command is executed in the foreground -
+is executed. Word replacement is done in the same way as for the
+.Dq !bg
+commanad as described above.
+.Pp
+Use of the ! character
+requires a following space as with any of the other commands. You should
+note that this command is executed in the foreground -
.Nm
will not continue running until this process has exited. Use the
.Dv bg