Magellan Linux

Annotation of /trunk/ppp/patches/ppp-2.4.4-linkpidfile.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 797 - (hide annotations) (download)
Mon May 11 09:46:04 2009 UTC (15 years ago) by niro
File size: 3430 byte(s)
-added patches from gentoo

1 niro 797 diff -Nru ppp-2.4.4.orig/pppd/auth.c ppp-2.4.4/pppd/auth.c
2     --- ppp-2.4.4.orig/pppd/auth.c 2007-05-28 21:08:06.000000000 +0300
3     +++ ppp-2.4.4/pppd/auth.c 2007-05-28 21:06:56.000000000 +0300
4     @@ -648,7 +648,7 @@
5     * we delete its pid file.
6     */
7     if (!doing_multilink && !demand)
8     - remove_pidfiles();
9     + remove_pidfile(pidfilename);
10    
11     /*
12     * If we may want to bring the link up again, transfer
13     diff -Nru ppp-2.4.4.orig/pppd/main.c ppp-2.4.4/pppd/main.c
14     --- ppp-2.4.4.orig/pppd/main.c 2007-05-28 21:08:06.000000000 +0300
15     +++ ppp-2.4.4/pppd/main.c 2007-05-28 21:09:37.000000000 +0300
16     @@ -134,7 +134,7 @@
17    
18     char *progname; /* Name of this program */
19     char hostname[MAXNAMELEN]; /* Our hostname */
20     -static char pidfilename[MAXPATHLEN]; /* name of pid file */
21     +char pidfilename[MAXPATHLEN]; /* name of pid file */
22     static char linkpidfile[MAXPATHLEN]; /* name of linkname pid file */
23     char ppp_devnam[MAXPATHLEN]; /* name of PPP tty (maybe ttypx) */
24     uid_t uid; /* Our real user-id */
25     @@ -244,6 +244,7 @@
26     static void toggle_debug __P((int));
27     static void open_ccp __P((int));
28     static void bad_signal __P((int));
29     +static void remove_pidfilenames __P((void));
30     static void holdoff_end __P((void *));
31     static void forget_child __P((int pid, int status));
32     static int reap_kids __P((void));
33     @@ -846,16 +847,24 @@
34     }
35    
36     /*
37     - * remove_pidfile - remove our pid files
38     + * remove_pidfile - remove one of the 2 pidfiles (pidfilename or linkpidfile)
39     */
40     -void remove_pidfiles()
41     +void
42     +remove_pidfile(filename)
43     + char* filename;
44     {
45     - if (pidfilename[0] != 0 && unlink(pidfilename) < 0 && errno != ENOENT)
46     - warn("unable to delete pid file %s: %m", pidfilename);
47     - pidfilename[0] = 0;
48     - if (linkpidfile[0] != 0 && unlink(linkpidfile) < 0 && errno != ENOENT)
49     - warn("unable to delete pid file %s: %m", linkpidfile);
50     - linkpidfile[0] = 0;
51     + if (filename[0] != 0 && unlink(filename) < 0 && errno != ENOENT)
52     + warn("unable to delete pid file %s: %m", filename);
53     + filename[0] = 0;
54     +}
55     +
56     +/*
57     + * remove_pidfiles - remove our pid files
58     + */
59     +static void remove_pidfiles()
60     +{
61     + remove_pidfile(pidfilename);
62     + remove_pidfile(linkpidfile);
63     }
64    
65     /*
66     diff -Nru ppp-2.4.4.orig/pppd/multilink.c ppp-2.4.4/pppd/multilink.c
67     --- ppp-2.4.4.orig/pppd/multilink.c 2007-05-28 21:08:06.000000000 +0300
68     +++ ppp-2.4.4/pppd/multilink.c 2007-05-28 21:06:56.000000000 +0300
69     @@ -267,7 +267,7 @@
70     notice("Connection terminated.");
71     print_link_stats();
72     if (!demand) {
73     - remove_pidfiles();
74     + remove_pidfile(pidfilename);
75     script_unsetenv("IFNAME");
76     }
77    
78     diff -Nru ppp-2.4.4.orig/pppd/pppd.h ppp-2.4.4/pppd/pppd.h
79     --- ppp-2.4.4.orig/pppd/pppd.h 2007-05-28 21:08:06.000000000 +0300
80     +++ ppp-2.4.4/pppd/pppd.h 2007-05-28 21:10:11.000000000 +0300
81     @@ -214,6 +214,7 @@
82     extern int ifunit; /* Interface unit number */
83     extern char ifname[]; /* Interface name */
84     extern char hostname[]; /* Our hostname */
85     +extern char pidfilename[]; /* name of pid file */
86     extern u_char outpacket_buf[]; /* Buffer for outgoing packets */
87     extern int devfd; /* fd of underlying device */
88     extern int fd_ppp; /* fd for talking PPP */
89     @@ -499,7 +500,7 @@
90     int ppp_send_config __P((int, int, u_int32_t, int, int));
91     int ppp_recv_config __P((int, int, u_int32_t, int, int));
92     const char *protocol_name __P((int));
93     -void remove_pidfiles __P((void));
94     +void remove_pidfile __P((char *));
95     void lock_db __P((void));
96     void unlock_db __P((void));
97