kernel: fq_codel: dont reinit flow state
[openwrt/staging/dedeckeh.git] / package / ppp / patches / 400-simplify_kernel_checks.patch
index e82996c5f786701854a495970e6aa941b8cd3f66..ec82576cbc7813bc64c3b949e133cae41667a11d 100644 (file)
@@ -1,3 +1,13 @@
+pppd: Remove runtime kernel checks
+
+On embedded system distributions the required kernel features for pppd are
+more or less guaranteed to be present, so there is not much point in
+performing runtime checks, it just increases the binary size.
+
+This patch removes the runtime kernel feature checks.
+
+Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
+
 --- a/pppd/sys-linux.c
 +++ b/pppd/sys-linux.c
 @@ -203,7 +203,7 @@ static int driver_is_old       = 0;
@@ -19,7 +29,7 @@
  
  #define MAX_IFS               100
  
-@@ -1414,11 +1414,12 @@ int ccp_fatal_error (int unit)
+@@ -1438,11 +1438,12 @@ int ccp_fatal_error (int unit)
   *
   * path_to_procfs - find the path to the proc file system mount point
   */
@@ -34,7 +44,7 @@
      struct mntent *mntent;
      FILE *fp;
  
-@@ -1440,6 +1441,7 @@ static char *path_to_procfs(const char *
+@@ -1464,6 +1465,7 @@ static char *path_to_procfs(const char *
            fclose (fp);
        }
      }
@@ -42,9 +52,9 @@
  
      strlcpy(proc_path + proc_path_len, tail,
            sizeof(proc_path) - proc_path_len);
-@@ -2098,11 +2100,13 @@ int ppp_available(void)
-       "ppp.o exists in /lib/modules/`uname -r`/net.\n"
-       "See README.linux file in the ppp distribution for more details.\n";
+@@ -2116,15 +2118,19 @@ int ppp_available(void)
+     int    my_version, my_modification, my_patch;
+     int osmaj, osmin, ospatch;
  
 +#if 0
      /* get the kernel version now, since we are called before sys_init */
 +#endif
  
      fd = open("/dev/ppp", O_RDWR);
- #if 0
-@@ -2121,7 +2125,9 @@ int ppp_available(void)
-     }
- #endif /* 0 */
      if (fd >= 0) {
 +#if 0
        new_style_driver = 1;
@@ -66,7 +72,7 @@
  
        /* XXX should get from driver */
        driver_version = 2;
-@@ -2168,6 +2174,7 @@ int ppp_available(void)
+@@ -2185,6 +2191,7 @@ int ppp_available(void)
  
      if (ok && ((ifr.ifr_hwaddr.sa_family & ~0xFF) != ARPHRD_PPP))
        ok = 0;
@@ -74,7 +80,7 @@
  
  /*
   *  This is the PPP device. Validate the version of the driver at this
-@@ -2659,6 +2666,7 @@ get_pty(master_fdp, slave_fdp, slave_nam
+@@ -2678,6 +2685,7 @@ get_pty(master_fdp, slave_fdp, slave_nam
      }
  #endif /* TIOCGPTN */
  
@@ -82,7 +88,7 @@
      if (sfd < 0) {
        /* the old way - scan through the pty name space */
        for (i = 0; i < 64; ++i) {
-@@ -2677,6 +2685,7 @@ get_pty(master_fdp, slave_fdp, slave_nam
+@@ -2696,6 +2704,7 @@ get_pty(master_fdp, slave_fdp, slave_nam
            }
        }
      }
        return 0;
 --- a/pppd/plugins/pppoatm/pppoatm.c
 +++ b/pppd/plugins/pppoatm/pppoatm.c
-@@ -210,14 +210,6 @@ static void recv_config_pppoa(int mru,
+@@ -170,14 +170,6 @@ static void disconnect_pppoatm(void)
  
  void plugin_init(void)
  {
--#ifdef linux
+-#if defined(__linux__)
 -      extern int new_style_driver;    /* From sys-linux.c */
 -      if (!ppp_available() && !new_style_driver)
 -              fatal("Kernel doesn't support ppp_generic - "
 -#else
 -      fatal("No PPPoATM support on this OS");
 -#endif
+       info("PPPoATM plugin_init");
        add_options(pppoa_options);
  }
 --- a/pppd/plugins/rp-pppoe/plugin.c
 +++ b/pppd/plugins/rp-pppoe/plugin.c
-@@ -55,9 +55,6 @@ static char const RCSID[] =
+@@ -60,9 +60,6 @@ static char const RCSID[] =
  
  char pppd_version[] = VERSION;
  
  char *pppd_pppoe_service = NULL;
  static char *acName = NULL;
  static char *existingSession = NULL;
-@@ -312,10 +309,6 @@ PPPoEDevnameHook(char *cmd, char **argv,
+@@ -340,10 +337,6 @@ PPPoEDevnameHook(char *cmd, char **argv,
  void
  plugin_init(void)
  {
 -    }
 -
      add_options(Options);
- }
  
+     info("RP-PPPoE plugin version %s compiled against pppd %s",
+--- a/pppd/plugins/pppol2tp/pppol2tp.c
++++ b/pppd/plugins/pppol2tp/pppol2tp.c
+@@ -500,12 +500,7 @@ static void pppol2tp_cleanup(void)
+ void plugin_init(void)
+ {
+-#if defined(__linux__)
+-      extern int new_style_driver;    /* From sys-linux.c */
+-      if (!ppp_available() && !new_style_driver)
+-              fatal("Kernel doesn't support ppp_generic - "
+-                  "needed for PPPoL2TP");
+-#else
++#if !defined(__linux__)
+       fatal("No PPPoL2TP support on this OS");
+ #endif
+       add_options(pppol2tp_options);