*/
#ifndef lint
-static char rcsid[] = "$Id: options.c,v 1.33 1996/08/28 06:41:35 paulus Exp $";
+static char rcsid[] = "$Id: options.c,v 1.35 1996/09/26 06:22:22 paulus Exp $";
#endif
#include <ctype.h>
static int setpapcrypt __P((void));
static int setidle __P((char **));
static int setholdoff __P((char **));
+static int setdnsaddr __P((char **));
#ifdef IPX_CHANGE
static int setipxproto __P((void));
static int setipxcpfails __P((char **));
#endif /* IPX_CHANGE */
-#ifdef USE_MS_DNS
-static int setdnsaddr __P((char **));
-#endif
-
static int number_option __P((char *, u_int32_t *, int));
static int int_option __P((char *, int *));
static int readable __P((int fd));
{"papcrypt", 0, setpapcrypt}, /* PAP passwords encrypted */
{"idle", 1, setidle}, /* idle time limit (seconds) */
{"holdoff", 1, setholdoff}, /* set holdoff time (seconds) */
+ {"ms-dns", 1, setdnsaddr}, /* DNS address for the peer's use */
#ifdef IPX_CHANGE
{"ipx-network", 1, setipxnetwork}, /* IPX network number */
{"-ipx", 0, resetipxproto}, /* Disable IPXCP (and IPX) */
#endif /* IPX_CHANGE */
-#ifdef USE_MS_DNS
- {"ms-dns", 1, setdnsaddr}, /* DNS address(es) for the peer's use */
-#endif
-
{NULL, 0, NULL}
};
option_error("using the name option requires root privilege");
return 0;
}
- if (our_name[0] == 0) {
- strncpy(our_name, argv[0], MAXNAMELEN);
- our_name[MAXNAMELEN-1] = 0;
- }
+ strncpy(our_name, argv[0], MAXNAMELEN);
+ our_name[MAXNAMELEN-1] = 0;
return 1;
}
static int
setdefaultroute()
{
- if (!ipcp_allowoptions[0].default_route && !privileged_option) {
+ if (!ipcp_allowoptions[0].default_route) {
option_error("defaultroute option is disabled");
return 0;
}
static int
setproxyarp()
{
- if (!ipcp_allowoptions[0].proxy_arp && !privileged_option) {
+ if (!ipcp_allowoptions[0].proxy_arp) {
option_error("proxyarp option is disabled");
return 0;
}
return int_option(*argv, &holdoff);
}
+/*
+ * setdnsaddr - set the dns address(es)
+ */
+static int
+setdnsaddr(argv)
+ char **argv;
+{
+ u_int32_t dns;
+ struct hostent *hp;
+
+ dns = inet_addr(*argv);
+ if (dns == -1) {
+ if ((hp = gethostbyname(*argv)) == NULL) {
+ option_error("invalid address parameter '%s' for ms-dns option",
+ *argv);
+ return 0;
+ }
+ dns = *(u_int32_t *)hp->h_addr;
+ }
+
+ if (ipcp_allowoptions[0].dnsaddr[0] == 0) {
+ ipcp_allowoptions[0].dnsaddr[0] = dns;
+ } else {
+ ipcp_allowoptions[0].dnsaddr[1] = dns;
+ }
+
+ return (1);
+}
+
#ifdef IPX_CHANGE
static int
setipxrouter (argv)
return 1;
}
#endif /* IPX_CHANGE */
-
-#ifdef USE_MS_DNS
-/*
- * setdnsaddr - set the dns address(es)
- */
-
-static int
-setdnsaddr(argv)
- char **argv;
-{
- u_int32_t dns;
- struct hostent *hp;
-
- dns = inet_addr(*argv);
- if (dns == -1) {
- if ((hp = gethostbyname(*argv)) == NULL) {
- option_error("invalid address parameter '%s' for ms-dns option",
- *argv);
- return 0;
- }
- dns = *(u_int32_t *)hp->h_addr;
- }
-
- if (ipcp_allowoptions[0].dnsaddr[0] == 0) {
- ipcp_allowoptions[0].dnsaddr[0] = dns;
- } else {
- ipcp_allowoptions[0].dnsaddr[1] = dns;
- }
-
- return (1);
-}
-#endif /* USE_MS_DNS */