summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ppp/server.c
diff options
context:
space:
mode:
authorbrian <brian@FreeBSD.org>1997-09-09 21:51:39 +0000
committerbrian <brian@FreeBSD.org>1997-09-09 21:51:39 +0000
commit0791c3c050563d41ecbe2f1f3dbd97650078073e (patch)
tree3e5dfc8a61a8bcf3a14a246396d24730d53012df /usr.sbin/ppp/server.c
parent4939f4fc068fe39f1044cd1462eb87e57064ec20 (diff)
downloadFreeBSD-src-0791c3c050563d41ecbe2f1f3dbd97650078073e.zip
FreeBSD-src-0791c3c050563d41ecbe2f1f3dbd97650078073e.tar.gz
Correct ppp authentication defaults in interactive
mode. We don't want to be forced to type a password here :-( Pointed out by: mouth@ibm.net (John Kelly) While I'm there, don't allow a "set server" in interactive mode.
Diffstat (limited to 'usr.sbin/ppp/server.c')
-rw-r--r--usr.sbin/ppp/server.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/usr.sbin/ppp/server.c b/usr.sbin/ppp/server.c
index 7aab041..c756d77 100644
--- a/usr.sbin/ppp/server.c
+++ b/usr.sbin/ppp/server.c
@@ -15,6 +15,7 @@
#include "loadalias.h"
#include "vars.h"
#include "server.h"
+#include "defs.h"
int server = UNKNOWN_SERVER;
static struct sockaddr_un ifsun;
@@ -31,6 +32,11 @@ ServerLocalOpen(const char *name, mode_t mask)
return 1;
}
+ if (!(mode&(MODE_AUTO|MODE_DEDICATED|MODE_DIRECT))) {
+ LogPrintf(LogERROR, "Local: Can't open socket in interactive mode\n");
+ return 1;
+ }
+
ifsun.sun_len = strlen(name);
if (ifsun.sun_len > sizeof ifsun.sun_path - 1) {
LogPrintf(LogERROR, "Local: %s: Path too long\n", name);
@@ -80,6 +86,12 @@ ServerTcpOpen(int port)
"in ppp.secret\n", port);
return 6;
}
+
+ if (!(mode&(MODE_AUTO|MODE_DEDICATED|MODE_DIRECT))) {
+ LogPrintf(LogERROR, "Tcp: Can't open socket in interactive mode\n");
+ return 6;
+ }
+
s = socket(PF_INET, SOCK_STREAM, 0);
if (s < 0) {
LogPrintf(LogERROR, "Tcp: socket: %s\n", strerror(errno));
OpenPOWER on IntegriCloud