X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fplugins%2Fradius%2Fradattr.c;h=f6a787424afc4fc304f605fb02467b4d055d9700;hb=e8676075aea6d278f435d5ce83d9b6aa216a1ecb;hp=1dee313bc1cb04a84b46e4f09d86ec6735a3518e;hpb=ab4d4992050ec171e1c72d661a3457efc8e7c141;p=ppp.git diff --git a/pppd/plugins/radius/radattr.c b/pppd/plugins/radius/radattr.c index 1dee313..f6a7874 100644 --- a/pppd/plugins/radius/radattr.c +++ b/pppd/plugins/radius/radattr.c @@ -24,6 +24,8 @@ static char const RCSID[] = #include "pppd.h" #include "radiusclient.h" #include +#include +#include extern void (*radius_attributes_hook)(VALUE_PAIR *); static void print_attributes(VALUE_PAIR *); @@ -75,9 +77,12 @@ print_attributes(VALUE_PAIR *vp) char name[2048]; char value[2048]; int cnt = 0; + mode_t old_umask; slprintf(fname, sizeof(fname), "/var/run/radattr.%s", ifname); + old_umask = umask(077); fp = fopen(fname, "w"); + umask(old_umask); if (!fp) { warn("radattr plugin: Could not open %s for writing: %m", fname); return;