diff -up pptp-1.7.2/pptp.c.const pptp-1.7.2/pptp.c
--- pptp-1.7.2/pptp.c.const 2011-11-30 18:58:39.713148113 +0000
+++ pptp-1.7.2/pptp.c 2011-12-01 09:23:29.716446618 +0000
@@ -565,10 +565,13 @@ int get_call_id(int sock, pid_t gre, pid
void launch_pppd(char *ttydev, int argc, char **argv)
{
char *new_argv[argc + 4];/* XXX if not using GCC, hard code a limit here. */
+ char str_pppd[] = PPPD_BINARY;
+ char str_direct[] = "-direct";
+ char str_38400[] = "38400";
int i = 0, j;
- new_argv[i++] = PPPD_BINARY;
+ new_argv[i++] = str_pppd;
#ifdef USER_PPP
- new_argv[i++] = "-direct";
+ new_argv[i++] = str_direct;
/* ppp expects to have stdin connected to ttydev */
if ((j = open(ttydev, O_RDWR)) == -1)
fatal("Cannot open %s: %s", ttydev, strerror(errno));
@@ -577,7 +580,7 @@ void launch_pppd(char *ttydev, int argc,
close(j);
#else
new_argv[i++] = ttydev;
- new_argv[i++] = "38400";
+ new_argv[i++] = str_38400;
#endif
for (j = 0; j < argc; j++)
new_argv[i++] = argv[j];
diff -up pptp-1.7.2/util.c.const pptp-1.7.2/util.c
--- pptp-1.7.2/util.c.const 2008-05-14 07:33:55.000000000 +0100
+++ pptp-1.7.2/util.c 2011-11-30 18:58:39.719148114 +0000
@@ -16,7 +16,7 @@
#endif
/* implementation of log_string, defined as extern in util.h */
-char *log_string = "anon";
+const char *log_string = "anon";
static void open_log(void) __attribute__ ((constructor));
static void close_log(void) __attribute__ ((destructor));
diff -up pptp-1.7.2/util.h.const pptp-1.7.2/util.h
--- pptp-1.7.2/util.h.const 2008-05-14 07:33:55.000000000 +0100
+++ pptp-1.7.2/util.h 2011-11-30 18:59:47.458171318 +0000
@@ -10,7 +10,7 @@
/* log_string is an identifier for this pptp process, passed from
command line using --log-string=X, and included with every log message.
Useful for people with multiple pptp sessions open at a time */
-extern char * log_string;
+extern const char * log_string;
/* log_level sets the logging verbosity. Values range from 0 (errors only)
to 1 (errors and warnings) to 2 (high verbosity, for debugging) */