]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Create a state directory for net-snmp
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Mon, 13 Sep 2021 19:16:15 +0000 (14:16 -0500)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Mon, 13 Sep 2021 19:16:15 +0000 (14:16 -0500)
debian/freeradius-snmp.dirs [new file with mode: 0644]
debian/freeradius.dirs
debian/freeradius.postinst
debian/freeradius.service
redhat/freeradius.spec
redhat/radiusd.service

diff --git a/debian/freeradius-snmp.dirs b/debian/freeradius-snmp.dirs
new file mode 100644 (file)
index 0000000..10f07ad
--- /dev/null
@@ -0,0 +1 @@
+var/lib/freeradius/snmp
index d5c578829aafdb249a350b85910da55535da36c9..66c62bfc4d797b9939f16a4bb433a948db3540ef 100644 (file)
@@ -1,2 +1,3 @@
 usr/lib/freeradius
 var/log/freeradius
+var/lib/freeradius
index d1ad8107397db3a124d202cd9a27f3551f3ada26..ce51a1d66c1d03f5ae3128032fdb25efb9bbcb2d 100644 (file)
@@ -17,6 +17,11 @@ case "$1" in
             dpkg-statoverride --add --update freerad freerad 0755 /var/run/freeradius
           fi
 
+          if ! dpkg-statoverride --list | grep -q /var/lib/freeradius$; then
+            mkdir -p /var/lib/freeradius
+            dpkg-statoverride --add --update freerad freerad 0755 /var/lib/freeradius
+          fi
+
           if ! dpkg-statoverride --list | grep -q /var/log/freeradius$; then
             mkdir -p /var/log/freeradius
             dpkg-statoverride --add --update freerad freerad 0750 /var/log/freeradius
index b48b69081f1c5820862cf46f6b5b71b5d0101a69..475d11f04882cbb1da9b3ce34bec73365d359438 100644 (file)
@@ -17,6 +17,11 @@ EnvironmentFile=-/etc/default/freeradius
 # We provide HOSTNAME here for convenience.
 Environment=HOSTNAME=%H
 
+# Not needed/used unless the freeradius-snmp package is installed.
+# Used by snmptrap and friends to determine where to stored persistent
+# configuration files.
+Environment=SNMP_PERSISTENT_DIR=/var/lib/freeradius/snmp
+
 # Limit memory to 2G this is fine for %99.99 of deployments.  FreeRADIUS
 # is not memory hungry, if it's using more than this, then there's probably
 # a leak somewhere.
@@ -65,5 +70,11 @@ ReadOnlyDirectories=/etc/freeradius/
 # We can read and write to the log directory.
 ReadWriteDirectories=/var/log/freeradius/
 
+# We can read and write to our run dir
+ReadWriteDirectories=/var/run/freeradius/
+
+# We can read and write to our persistent dir
+ReadWriteDirectories=/var/lib/freeradius/
+
 [Install]
 WantedBy=multi-user.target
index bb7460dd949dea90da019b9627c0ac3ffef391b4..dbebc5dec7b5cd20bc6ddbc35f7d03b63ff07f02 100644 (file)
@@ -714,8 +714,8 @@ fi
 %{initddir}/radiusd
 %endif
 
-%dir %attr(755,radiusd,radiusd) /var/lib/radiusd
-%dir %attr(755,radiusd,radiusd) /var/run/radiusd/
+%dir %attr(755,radiusd,radiusd) %{_sharedstatedir}/radiusd/
+%dir %attr(755,radiusd,radiusd) %{_rundir}/radiusd/
 # binaries
 %defattr(-,root,root)
 /usr/sbin/checkrad
@@ -913,6 +913,7 @@ fi
 %defattr(-,root,root)
 /usr/bin/radsnmp
 %{_datadir}/snmp/mibs/*
+%dir %attr(750,radiusd,radiusd) %{_sharedstatedir}/radiusd/snmp
 
 %files perl-util
 %defattr(-,root,root)
index 0932102d38ae83dc68f1fc5784b6b2220052d777..e5b84c6c49c83ac88067d455464937abd97013c4 100644 (file)
@@ -17,6 +17,11 @@ EnvironmentFile=-/etc/sysconfig/radiusd
 # We provide HOSTNAME here for convenience.
 Environment=HOSTNAME=%H
 
+# Not needed/used unless the freeradius-snmp package is installed.
+# Used by snmptrap and friends to determine where to stored persistent
+# configuration files.
+Environment=SNMP_PERSISTENT_DIR=/var/lib/radiusd/snmp
+
 # Limit memory to 2G this is fine for %99.99 of deployments.  FreeRADIUS
 # is not memory hungry, if it's using more than this, then there's probably
 # a leak somewhere.
@@ -64,5 +69,11 @@ ReadOnlyDirectories=/etc/raddb/
 # We can read and write to the log directory.
 ReadWriteDirectories=/var/log/radius/
 
+# We can read and write to our run dir
+ReadWriteDirectories=/var/run/radiusd/
+
+# We can read and write to our persistent dir
+ReadWriteDirectories=/var/lib/radiusd/
+
 [Install]
 WantedBy=multi-user.target