diff -up ppp-2.4.5/pppd/pathnames.h.var_run_ppp ppp-2.4.5/pppd/pathnames.h
--- ppp-2.4.5/pppd/pathnames.h.var_run_ppp	2010-02-12 16:36:14.479362718 +0100
+++ ppp-2.4.5/pppd/pathnames.h	2010-02-12 16:38:24.995330994 +0100
@@ -7,9 +7,13 @@
 #ifdef HAVE_PATHS_H
 #include <paths.h>
 
+#define _SUBPATH_PPP       "ppp/"
 #else /* HAVE_PATHS_H */
 #ifndef _PATH_VARRUN
 #define _PATH_VARRUN 	"/etc/ppp/"
+#define _SUBPATH_PPP
+#else
+#define _SUBPATH_PPP       "ppp/"
 #endif
 #define _PATH_DEVNULL	"/dev/null"
 #endif /* HAVE_PATHS_H */
@@ -46,10 +50,10 @@
 #endif /* IPX_CHANGE */
 
 #ifdef __STDC__
-#define _PATH_PPPDB	_ROOT_PATH _PATH_VARRUN "pppd2.tdb"
+#define _PATH_PPPDB	_ROOT_PATH _PATH_VARRUN _SUBPATH_PPP "pppd2.tdb"
 #else /* __STDC__ */
 #ifdef HAVE_PATHS_H
-#define _PATH_PPPDB	"/var/run/pppd2.tdb"
+#define _PATH_PPPDB	"/run/ppp/pppd2.tdb"
 #else
 #define _PATH_PPPDB	"/etc/ppp/pppd2.tdb"
 #endif
