]> git.pld-linux.org Git - packages/freeradius-server.git/commitdiff
continuing 3.0 update
authorJacek Konieczny <j.konieczny@eggsoft.pl>
Wed, 10 Oct 2018 13:21:22 +0000 (15:21 +0200)
committerJacek Konieczny <j.konieczny@eggsoft.pl>
Wed, 10 Oct 2018 13:23:30 +0000 (15:23 +0200)
It builds and starts for me (on an OpenSSL 1.0 system)

am.patch [deleted file]
cui-fr-2.2.0.patch [deleted file]
failed_calls_accounting.patch [deleted file]
format-security.patch [deleted file]
freeradius-server-heimdal.patch [deleted file]
freeradius-server-libdir.patch
freeradius-server-makefile.patch [deleted file]
freeradius-server-oracle.patch [deleted file]
freeradius-server-rubyhdrs.patch [deleted file]
freeradius-server.spec

diff --git a/am.patch b/am.patch
deleted file mode 100644 (file)
index 1870b65..0000000
--- a/am.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- freeradius-server-2.2.0/libltdl/configure.ac~      2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/libltdl/configure.ac       2013-06-09 20:39:52.891748305 +0200
-@@ -51,7 +51,7 @@
- ## Automake Initialisation. ##
- ## ------------------------ ##
- AM_INIT_AUTOMAKE(AC_PACKAGE_TARNAME, AC_PACKAGE_VERSION, -)
--AM_CONFIG_HEADER([config.h:config-h.in])
-+AC_CONFIG_HEADERS([config.h:config-h.in])
- ## ------------------ ##
---- freeradius-server-2.2.6/src/modules/rlm_ldap/configure.in.orig     2014-11-18 20:56:52.000000000 +0100
-+++ freeradius-server-2.2.6/src/modules/rlm_ldap/configure.in  2015-03-22 09:55:46.702919736 +0100
-@@ -49,9 +49,6 @@
-         esac ]
-       )
--      dnl extra argument: --enable-shared --disable-shared
--      AC_ENABLE_SHARED
--
-       dnl OpenLDAP doesn't provide an autoconf test for their libldap,
-       dnl and we can't reasonably check for all the dependancies for
-       dnl every version and every set of options.
---- freeradius-server-2.2.6/configure.in.orig  2014-11-18 20:56:52.000000000 +0100
-+++ freeradius-server-2.2.6/configure.in       2015-03-22 10:07:01.436224750 +0100
-@@ -121,17 +121,10 @@
- dnl use system-wide libtool, if it exists
- AC_ARG_WITH(system-libtool,
- [  --with-system-libtool   Use the libtool installed in your system (default=use our own)],
--[ AC_PATH_PROG(LIBTOOL, libtool,,$PATH:/usr/local/bin) AC_LIBTOOL_DLOPEN
-- AC_PROG_LIBTOOL],
--[
--  LIBTOOL="`pwd`/libtool"
--  AC_SUBST(LIBTOOL)
--  dnl ensure that we're looking for dlopen
--  AC_LIBTOOL_DLOPEN
--
--  dnl Figure out how to build shared libraries
--  AC_PROG_LIBTOOL
--])
-+[ AC_PATH_PROG(LIBTOOL, libtool,,$PATH:/usr/local/bin)
-+ ])
-+AC_PROG_LIBTOOL
-+AC_LIBTOOL_DLOPEN
- dnl Put this in later, when all distributed modules use autoconf.
diff --git a/cui-fr-2.2.0.patch b/cui-fr-2.2.0.patch
deleted file mode 100644 (file)
index 723c3dc..0000000
+++ /dev/null
@@ -1,399 +0,0 @@
-diff -Naur freeradius-server-2.2.0-orig/doc/cui_howto.txt freeradius-server-2.2.0/doc/cui_howto.txt
---- freeradius-server-2.2.0-orig/doc/cui_howto.txt     1970-01-01 01:00:00.000000000 +0100
-+++ freeradius-server-2.2.0/doc/cui_howto.txt  2012-09-13 10:57:56.645722777 +0200
-@@ -0,0 +1,78 @@
-+Chargeable-User-Identity (CUI) support.
-+
-+1. OVERVIEW
-+
-+This extension introduces support for Chargeable-User-Identity (CUI) attribute 
-+as defined in RFC 4372. 
-+
-+The CUI attribute is meant to support roaming scenarios where
-+the user is accessing the network at one location (Service Provider - SP)
-+while authenticated by a RADIUS server at another institution (Identity
-+Provider - IdP). CUI provides means for the SP to request the IdP 
-+to return a unique, persistent, opaque user identifier.
-+
-+As defined in RFC 4372, CUI request is sent as a NULL value (single
-+zero byte) of CUI attribute inside the Access-Request packet. 
-+CUI response should be sent as the CUI value inside the Access-Accept.
-+
-+This extension has the following functionality:
-+
-+The SP side (*requesting* CUI):
-+      - add the CUI NULL attribute to Access-Request proxied from 
-+        the local NAS to the IdP
-+      - receive the CUI value from the IdP and store it in the local
-+        database
-+      - update Accounting-Request packets sent by NAS by adding 
-+        the appropriate CUI attribute (unless the attibute is 
-+        already present).
-+
-+The IdP side (*returning* CUI):
-+      - respond to the CUI request by generating the CUI value. 
-+        The value is created as the md5 hash if a configurable local
-+        salt and the User-Name attribute value.
-+
-+While CUI support has been added for roaming it is also useful for local
-+accounting.
-+
-+2. INSTALLATION
-+
-+The CUI *requesting* and CUI *returning* sides are implemented and
-+described separately. Most likely you want to run both, so just follow
-+the instructions of both sections.
-+
-+2.1 *requesting* CUI 
-+
-+      - Setup a MySQL database by creating (or using) a database of your
-+        choice and create an additional table cui. The schema is located
-+        in ${raddbdir}/sql/mysql/cui.sql.
-+
-+      - Enter the necessary details into ${raddbdir}/modules/cui.
-+        Things you need to modify are: 
-+          server - typically this will be localhost;
-+          login - mysql user allowed to modify the tables
-+          password - password for this user
-+          radius_db - database name you wish to use
-+
-+      - Modify the the main configuration file 
-+        "${raddbdir}/sites-availabe/default".
-+        Search for CUI. There are four sections where CUI is mentioned.
-+        Follow the instructions for *requesting* the CUI.
-+
-+2.2 *returning* CUI 
-+
-+      - Modify the the main configuration file
-+        "${raddbdir}/sites-available/default".
-+        Search for CUI. There are four sections where CUI is mentioned.
-+        Follow the instructions for *returning* the CUI.
-+        The cui_hash_key is used to safeguard the CUI from dictionary
-+        attacks and should be set to some "random" string.
-+
-+      - Modify "${raddbdir}/sites-availabe/inner-tunnel"
-+        Search for CUI. There is one section where CUI is mentioned.
-+        Follow the instructions for *returning* the CUI.
-+
-+3. ACKNOWLEDGEMENTS
-+
-+Authors: Maja Gorecka-Wolniewicz <mgw@umk.pl>, Alan DeKok
-+
-+Contributors: Stefan Winter, Tomasz Wolniewicz
-diff -Naur freeradius-server-2.2.0-orig/raddb/modules/cui freeradius-server-2.2.0/raddb/modules/cui
---- freeradius-server-2.2.0-orig/raddb/modules/cui     2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/raddb/modules/cui  2012-09-13 10:58:19.975050772 +0200
-@@ -21,5 +21,5 @@
-       connect_failure_retry_delay = 60
-       cui_table = "cui"
-       sql_user_name = "%{User-Name}"
--#$INCLUDE sql/${database}/cui.conf
-+      $INCLUDE sql/${database}/cui.conf
- }
-diff -Naur freeradius-server-2.2.0-orig/raddb/policy.conf freeradius-server-2.2.0/raddb/policy.conf
---- freeradius-server-2.2.0-orig/raddb/policy.conf     2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/raddb/policy.conf  2012-09-13 11:00:40.929563217 +0200
-@@ -145,53 +145,80 @@
-                 }
-       }
--      #       
--      #  The following policies are for the Chargeable-User-Identity
--      #  (CUI) configuration.
-+      #
-+      #       The following policies are for the Operator-Name handling
-+      #       (RFC5580) 
-+      #
-+      operator_name {
-+              if (Packet-Type == Access-Request) {
-+                      update  request {
-+                              Operator-Name := "%{config:sp_operator_name}"
-+                              Chargeable-User-Identity = '\\000'
-+                      }
-+              }
-+      }
-+      
-+      #
-+      #       The following policies are for the Chargeable-User-Identity
-+      #       (CUI) configuration. See doc/cui_howto.txt for more information.
-       #
-       #
--      #  The client indicates it can do CUI by sending a CUI attribute        
--      #  containing one zero byte
-+      #       The client requests the CUI by sending a CUI attribute
-+      #       containing one zero byte.
-       #
--      cui_authorize {
--              update request {
--                      Chargeable-User-Identity:='\\000'
-+      cui_pre-proxy {
-+              if (Packet-Type == Access-Request) {
-+                      update proxy-request {
-+                              Chargeable-User-Identity = '\\000'
-+                      }
-               }
-       }
-       #
--      #  Add a CUI attribute based on the User-Name, and a secret key
--      #  known only to this server.
-+      #       Add a CUI attribute based on the User-Name, and a secret key
-+      #       known only to this server.
-       #
-       cui_postauth {
--              if (FreeRadius-Proxied-To == 127.0.0.1) {
--                      if (outer.request:Chargeable-User-Identity) {
--                              update outer.reply {
--                                      Chargeable-User-Identity:="%{md5:%{config:cui_hash_key}%{User-Name}}"
-+              if (FreeRadius-Proxied-To == "127.0.0.1") {
-+                      #
-+                      #  Add the CUI to Access-Accept, but only if the CUI
-+                      #  was set in the request.
-+                      #
-+                      if (outer.request:Chargeable-User-Identity && (outer.request:Operator-Name) || !("%{config:cui_require_operator_name}") ) {
-+                              update reply {
-+                              Chargeable-User-Identity := "%{md5:%{config:cui_hash_key}%{request:User-Name}%{%{outer.request:Operator-Name}:-}}"
-                               }
-                       }
-               }
-               else {
--                      if (Chargeable-User-Identity) {
-+                      #
-+                      #  If the CUI was set in the request and the CUI reply
-+                      #  is not already set by inner auth, add it to
-+                      #  Access-Accept
-+                      #
-+                      if (!("%{control:Proxy-To-Realm}") && \
-+                              (Chargeable-User-Identity) && \
-+                              !(reply:Chargeable-User-Identity) && \
-+                              ( (Operator-Name) || ! ("%{config:cui_require_operator_name}") ) ) {
-                               update reply {
--                                      Chargeable-User-Identity="%{md5:%{config:cui_hash_key}%{User-Name}}"
-+                                      Chargeable-User-Identity = "%{md5:%{config:cui_hash_key}%{request:User-Name}%{%{Operator-Name}:-}}"
-                               }
-                       }
-               }
-       }
-       #
--      #  If there is a CUI attribute in the reply, add it to the DB.
-+      #       If there is a CUI attribute in the reply, add it to the DB.
-       #
-       cui_updatedb {
--              if (reply:Chargeable-User-Identity) {
-+              if ("%{reply:Chargeable-User-Identity}") {
-                       cui
-               }
-       }
-       #
--      #  If we had stored a CUI for the User, add it to the request.
-+      #       If we had stored a CUI for the User, add it to the request.
-       #
-       cui_accounting {
-               #
-@@ -199,20 +226,22 @@
-               #  in the DB.
-               #
-               if (!Chargeable-User-Identity) {
--                      update request {
--                              Chargeable-User-Identity := "%{cui: SELECT cui FROM cui WHERE clientipaddress = '%{Client-IP-Address}' AND callingstationid = '%{Calling-Station-Id}' AND username = '%{User-Name}'}"
-+                      update control {
-+                              Chargeable-User-Identity = "%{cui: SELECT cui FROM cui WHERE clientipaddress = '%{Client-IP-Address}' AND callingstationid = '%{Calling-Station-Id}' AND username = '%{User-Name}'}"
-                       }
-               }
--
-               #
--              #  If it exists now, then write out when we last saw
--              #  this CUI.
-+              #  If it exists now, then update request and write out 
-+              #  when we last saw this CUI.
-               #
--              if (Chargeable-User-Identity && (Chargeable-User-Identity != "")) {
-+                if (control:Chargeable-User-Identity && \
-+                      (control:Chargeable-User-Identity != "")) {
-+                      update request {
-+                              Chargeable-User-Identity := "%{control:Chargeable-User-Identity}"
-+                      }
-                       cui
-               }
-       }
--
-       #
-       #  Normalize the MAC Addresses in the Calling/Called-Station-Id
-       #
-diff -Naur freeradius-server-2.2.0-orig/raddb/sites-available/default freeradius-server-2.2.0/raddb/sites-available/default
---- freeradius-server-2.2.0-orig/raddb/sites-available/default 2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/raddb/sites-available/default      2012-09-13 11:04:54.939298452 +0200
-@@ -1,3 +1,13 @@
-+#  If *returning* the CUI, set cui_hash_key to some random string
-+#  and uncomment the line below
-+#       cui_hash_key = "some secret value"
-+#  If *returning* the CUI and the Operator-Name attribute in request is 
-+#  required, uncomment the line below
-+#       cui_require_operator_name = yes
-+#  If Operator-Name attribute is used, uncomment the line below and
-+#  fill out with one of your registered DNS domain names, which
-+#  will be used as the Operator-Name attribute value
-+#       sp_operator_name = "1your.registered.domain.name"
- ######################################################################
- #
- #     As of 2.0.0, FreeRADIUS supports virtual hosts using the
-@@ -376,6 +386,11 @@
- #  Accounting.  Log the accounting data.
- #
- accounting {
-+      #  cui_accounting reads the record form the temporary database,
-+      #  selects the corresponding CUI value, as set cui_updatedb
-+      #  and adds the CUI attribute to the accounting request
-+      #  uncomment the line below if *requesting* the CUI
-+#     cui_accounting
-       #
-       #  Create a 'detail'ed log of the packets.
-       #  Note that accounting requests which are proxied
-@@ -459,6 +474,17 @@
- #  Once we KNOW that the user has been authenticated, there are
- #  additional steps we can take.
- post-auth {
-+      #  cui_postauth reacts to the Chargeable-User-Identity request
-+      #  by adding the md5 hash created from a configurable local
-+      #  salt (cui_hash_key) and the (inner) User-Name value
-+      #  uncomment the line below if *returning* the CUI
-+#     cui_postauth
-+      #
-+      #  cui_updatedb updates the temporary database adding
-+      #  the record containing the received CUI value to be later
-+      #  used in accounting
-+      #  uncomment the line below if *requesting* the CUI
-+#     cui_updatedb
-       #  Get an address from the IP Pool.
- #     main_pool
-@@ -581,6 +607,14 @@
-       #  Uncomment the following line if you want to change attributes
-       #  as defined in the preproxy_users file.
- #     files
-+      
-+      # operator_name adds Operator-Name value to Access-Request
-+#     operator_name
-+
-+      #  cui_pre-proxy adds the NULL CUI value to Access-Request
-+      #  thus making it a Chargeable-User-Identity request
-+      #  uncomment the line below if *requesting* the CUI
-+#     cui_pre-proxy
-       #  Uncomment the following line if you want to filter requests
-       #  sent to remote servers based on the rules defined in the
-diff -Naur freeradius-server-2.2.0-orig/raddb/sites-available/inner-tunnel freeradius-server-2.2.0/raddb/sites-available/inner-tunnel
---- freeradius-server-2.2.0-orig/raddb/sites-available/inner-tunnel    2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/raddb/sites-available/inner-tunnel 2012-09-13 11:05:56.237168046 +0200
-@@ -261,6 +261,12 @@
- #  Once we KNOW that the user has been authenticated, there are
- #  additional steps we can take.
- post-auth {
-+      #  cui_postauth reacts to the Chargeable-User-Identity request
-+      #  by adding the md5 hash created from a configurable local
-+      #  salt (cui_hash_key) and the (inner) User-Name value
-+      #  uncomment the line below if *returning* the CUI
-+#     cui_postauth
-+
-       # Note that we do NOT assign IP addresses here.
-       # If you try to assign IP addresses for EAP authentication types,
-       # it WILL NOT WORK.  You MUST use DHCP.
-diff -Naur freeradius-server-2.2.0-orig/raddb/sql/mysql/cui.conf freeradius-server-2.2.0/raddb/sql/mysql/cui.conf
---- freeradius-server-2.2.0-orig/raddb/sql/mysql/cui.conf      2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/raddb/sql/mysql/cui.conf   2012-09-13 10:59:05.245170029 +0200
-@@ -1,31 +1,55 @@
- # -*- text -*-
--
- ##
--##  Queries to update the CUI table.
-+## cui.conf -- SQL - CUI queries
- ##
--postauth_query = "INSERT IGNORE INTO ${cui_table} \
--      (clientipaddress, callingstationid, username, cui, lastaccounting) \
--        VALUES \
--      ('%{Client-IP-Address}', '%{Calling-Station-Id}', '%{User-Name}', '%{reply:Chargeable-User-Identity}', NULL) ON DUPLICATE KEY UPDATE lastaccounting='0000-00-00 00:00:00', cui='%{reply:Chargeable-User-Identity}'";
-+##      $Id$
-+#
-+#     This is a part of the  Chargeable-User-Identity module
-+#     See doc/cui_howto.txt for more information
-+
-+
-+#     postauth_query creates a temporary record remembering
-+#     Client-IP-Address, Calling-Station-Id, User-Name,
-+#     Chargeable-User-Identity.
-+#     This information is used later to correlate accounting requests 
-+#     with the information received in Access-Accept
-+#
-+      postauth_query = "INSERT IGNORE INTO ${cui_table} \
-+              (clientipaddress, callingstationid, username, \
-+              cui, lastaccounting) \
-+                VALUES \
-+              ('%{Client-IP-Address}', '%{Calling-Station-Id}', \
-+              '%{User-Name}', '%{reply:Chargeable-User-Identity}', NULL) \
-+              ON DUPLICATE KEY UPDATE \
-+              lastaccounting='0000-00-00 00:00:00', \
-+              cui='%{reply:Chargeable-User-Identity}'";
-+
-+#     accounting_start_query and accounting_update_query are called
-+#     by Accounting-Request Start or Interim Update.
-+#     The appropriate temporary record is updates by entering
-+#     the current time as the lastaccounting field.
-+#     The value of lastaccounting can be used to clean up the database 
-+#     from stale temporary records.
-+#
-+      accounting_start_query = "UPDATE ${cui_table} \
-+              SET lastaccounting = CURRENT_TIMESTAMP \
-+              WHERE clientipaddress = '%{Client-IP-Address}' \
-+                AND callingstationid = '%{Calling-Station-Id}' \
-+                AND username = '%{User-Name}' \
-+              AND cui = '%{Chargeable-User-Identity}'";
--accounting_start_query = "UPDATE ${cui_table} \
--      SET \
--                lastaccounting = CURRENT_TIMESTAMP \
--      WHERE clientipaddress = '%{Client-IP-Address}' \
--        AND callingstationid = '%{Calling-Station-Id}' \
--        AND username = '%{User-Name}' \
--      AND cui = '%{Chargeable-User-Identity}'";
--  
--accounting_update_query = "UPDATE ${cui_table} \
--      SET \
--                lastaccounting = CURRENT_TIMESTAMP \
--      WHERE clientipaddress = '%{Client-IP-Address}' \
--        AND callingstationid = '%{Calling-Station-Id}' \
--        AND username = '%{User-Name}' \
--      AND cui = '%{Chargeable-User-Identity}'";
-+      accounting_update_query = "UPDATE ${cui_table} \
-+              SET lastaccounting = CURRENT_TIMESTAMP \
-+              WHERE clientipaddress = '%{Client-IP-Address}' \
-+                AND callingstationid = '%{Calling-Station-Id}' \
-+                AND username = '%{User-Name}' \
-+              AND cui = '%{Chargeable-User-Identity}'";
--accounting_stop_query = "DELETE FROM ${cui_table} WHERE \
--      clientipaddress = '%{Client-IP-Address}' \
--      AND callingstationid = '%{Calling-Station-Id}' \
--      AND username = '%{User-Name}' \
--      AND cui = '%{Chargeable-User-Identity}'";
-+#     accounting_stop_query is called by Accounting-Request Stop.
-+#     It deletes the temporary record form the database.
-+#
-+      accounting_stop_query = "DELETE FROM ${cui_table} WHERE \
-+              clientipaddress = '%{Client-IP-Address}' \
-+              AND callingstationid = '%{Calling-Station-Id}' \
-+              AND username = '%{User-Name}' \
-+              AND cui = '%{Chargeable-User-Identity}'";
-diff -Naur freeradius-server-2.2.0-orig/raddb/sql/mysql/cui.sql freeradius-server-2.2.0/raddb/sql/mysql/cui.sql
---- freeradius-server-2.2.0-orig/raddb/sql/mysql/cui.sql       2012-09-10 13:51:34.000000000 +0200
-+++ freeradius-server-2.2.0/raddb/sql/mysql/cui.sql    2012-09-13 10:59:05.245170029 +0200
-@@ -1,3 +1,7 @@
-+#
-+# Table structure for table 'cui'
-+#
-+#
- CREATE TABLE `cui` (
-   `clientipaddress` varchar(15) NOT NULL default '',
-   `callingstationid` varchar(50) NOT NULL default '',
diff --git a/failed_calls_accounting.patch b/failed_calls_accounting.patch
deleted file mode 100644 (file)
index 4cda17d..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-Index: man/man5/rlm_sql.5
-===================================================================
-RCS file: /source/radiusd/man/man5/rlm_sql.5,v
-retrieving revision 1.4
-diff -u -r1.4 rlm_sql.5
---- man/man5/rlm_sql.5 16 Mar 2008 15:39:10 -0000      1.4
-+++ man/man5/rlm_sql.5 22 Jul 2009 13:09:15 -0000
-@@ -118,6 +118,8 @@
- .IP accounting_stop_query_alt
- The query to be run when receiving an Accounting Stop packet.  If the
- primary query fails, the alt query is run.
-+.IP accounting_failed_query
-+The query to be run when receiving a Failed Packet.
- .IP simul_count_query
- The query to be run to return the number simultaneous sessions for the
- purposes of limiting Simultaneous Use.
-Index: raddb/sql/mssql/dialup.conf
-===================================================================
-RCS file: /source/radiusd/raddb/sql/mssql/dialup.conf,v
-retrieving revision 1.4
-diff -u -r1.4 dialup.conf
---- raddb/sql/mssql/dialup.conf        30 Apr 2008 08:33:39 -0000      1.4
-+++ raddb/sql/mssql/dialup.conf        22 Jul 2009 13:09:15 -0000
-@@ -66,6 +66,7 @@
-       # accounting_stop_query_alt     - query for Accounting start packets
-       #                               (alternate in case first query doesn't
-       #                                affect any existing rows in the table)
-+      # accounting_failed_query   - query for Accounting failed packets
-       #######################################################################
-       accounting_onoff_query = "UPDATE ${acct_table1} SET AcctStopTime='%S', AcctSessionTime=unix_timestamp('%S') - unix_timestamp(AcctStartTime), AcctTerminateCause='%{Acct-Terminate-Cause}', AcctStopDelay = %{Acct-Delay-Time:-0} WHERE AcctStopTime=0 AND NASIPAddress= '%{NAS-IP-Address}' AND AcctStartTime <= '%S'"
-@@ -88,3 +89,7 @@
-       # removed. These fields are processing by a database
-       accounting_stop_query_alt = "INSERT into ${acct_table2} (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPort, NASPortType, AcctStopTime, AcctSessionTime, AcctAuthentic, ConnectInfo_start, ConnectInfo_stop, AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId, AcctTerminateCause, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay, AcctStopDelay) values('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}', '%{NAS-Port-Id}', '%{NAS-Port-Type}', '%S', '%{Acct-Session-Time}', '%{Acct-Authentic}', '', '%{Connect-Info}', '%{Acct-Input-Octets}', '%{Acct-Output-Octets}', '%{Called-Station-Id}', '%{Calling-Station-Id}', '%{Acct-Terminate-Cause}', '%{Service-Type}', '%{Framed-Protocol}', '%{Framed-IP-Address}', '0', '%{Acct-Delay-Time:-0}')"
-+    # accounting_failed_query: Inserting of RadAcctId and AcctStopTime was
-+    # removed. These fields are processing by a database
-+    accounting_start_query = "INSERT into ${acct_table1} (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPort, NASPortType, AcctStartTime, AcctSessionTime, AcctAuthentic, ConnectInfo_start, ConnectInfo_stop, AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId, AcctTerminateCause, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay, AcctStopDelay, XAscendSessionSvrKey) \
-+    VALUES('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}', '%{NAS-Port-Id}', '%{NAS-Port-Type}', '%S', '0', '%{Acct-Authentic}', '%{Connect-Info}', '', '0', '0', '%{Called-Station-Id}', '%{Calling-Station-Id}', '', '%{Service-Type}', '%{Framed-Protocol}', '%{Framed-IP-Address}', '%{Acct-Delay-Time}', '0', '%{X-Ascend-Session-Svr-Key}')"
-Index: raddb/sql/mysql/dialup.conf
-===================================================================
-RCS file: /source/radiusd/raddb/sql/mysql/dialup.conf,v
-retrieving revision 1.8
-diff -u -r1.8 dialup.conf
---- raddb/sql/mysql/dialup.conf        3 May 2008 17:16:07 -0000       1.8
-+++ raddb/sql/mysql/dialup.conf        22 Jul 2009 13:09:15 -0000
-@@ -135,6 +135,7 @@
-       # accounting_stop_query_alt     - query for Accounting start packets
-       #                               (alternate in case first query doesn't
-       #                                affect any existing rows in the table)
-+      # accounting_failed_query   - query for Accounting failed packets
-       #######################################################################
-       accounting_onoff_query = "\
-           UPDATE ${acct_table1} \
-@@ -263,6 +264,27 @@
-              '%{Service-Type}', '%{Framed-Protocol}', '%{Framed-IP-Address}', \
-              '0', '%{%{Acct-Delay-Time}:-0}')"
-+    accounting_failed_query = " \
-+        INSERT INTO ${acct_table1} \
-+            (acctsessionid,    acctuniqueid,     username, \
-+             realm,            nasipaddress,     nasportid, \
-+             nasporttype,      acctstarttime,    acctstoptime, \
-+             acctsessiontime,  acctauthentic,    connectinfo_start, \
-+             connectinfo_stop, acctinputoctets,  acctoutputoctets, \
-+             calledstationid,  callingstationid, acctterminatecause, \
-+             servicetype,      framedprotocol,   framedipaddress, \
-+             acctstartdelay,   acctstopdelay,    xascendsessionsvrkey) \
-+        VALUES \
-+            ('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', \
-+             '%{SQL-User-Name}', \
-+             '%{Realm}', '%{NAS-IP-Address}', '%{NAS-Port}', \
-+             '%{NAS-Port-Type}', '%S', NULL, \
-+             '0', '%{Acct-Authentic}', '%{Connect-Info}', \
-+             '', '0', '0', \
-+             '%{Called-Station-Id}', '%{Calling-Station-Id}', '', \
-+             '%{Service-Type}', '%{Framed-Protocol}', '%{Framed-IP-Address}', \
-+             '%{%{Acct-Delay-Time}:-0}', '0', '%{X-Ascend-Session-Svr-Key}')"
-+
-       #######################################################################
-       # Simultaneous Use Checking Queries
-       #######################################################################
-Index: raddb/sql/oracle/dialup.conf
-===================================================================
-RCS file: /source/radiusd/raddb/sql/oracle/dialup.conf,v
-retrieving revision 1.4
-diff -u -r1.4 dialup.conf
---- raddb/sql/oracle/dialup.conf       30 Apr 2008 08:33:39 -0000      1.4
-+++ raddb/sql/oracle/dialup.conf       22 Jul 2009 13:09:15 -0000
-@@ -95,6 +95,7 @@
-       # accounting_stop_query_alt     - query for Accounting start packets 
-       #                               (alternate in case first query doesn't
-       #                                affect any existing rows in the table)
-+      # accounting_failed_query   - query for Accounting failed packets
-       #######################################################################
-       accounting_onoff_query = "UPDATE ${acct_table1} SET AcctStopTime=TO_DATE('%S','yyyy-mm-dd hh24:mi:ss'), AcctSessionTime=((TO_DATE('%S','yyyy-mm-dd hh24:mi:ss') - AcctStartTime)*86400), AcctTerminateCause='%{Acct-Terminate-Cause}', AcctStopDelay = %{Acct-Delay-Time:-0} WHERE AcctStopTime IS NULL AND NASIPAddress = '%{NAS-IP-Address}' AND AcctStartTime <= TO_DATE('%S','yyyy-mm-dd hh24:mi:ss')"
-@@ -142,6 +143,9 @@
-     '%{Called-Station-Id}', '%{Calling-Station-Id}', '%{Acct-Terminate-Cause}', '%{Service-Type}', \
-     '%{Framed-Protocol}', '%{Framed-IP-Address}', '0', '%{Acct-Delay-Time:-0}')"
-+accounting_failed_query = "INSERT into ${acct_table1} (RadAcctId, AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctStopTime, AcctSessionTime, AcctAuthentic, ConnectInfo_start, ConnectInfo_stop, AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId, AcctTerminateCause, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay, AcctStopDelay, XAscendSessionSvrKey) \
-+    VALUES('', '%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}', '%{NAS-Port-Id}', '%{NAS-Port-Type}', TO_DATE('%S','yyyy-mm-dd hh24:mi:ss'), NULL, '0', '%{Acct-Authentic}', '%{Connect-Info}', '', '0', '0', '%{Called-Station-Id}', '%{Calling-Station-Id}', '', '%{Service-Type}', '%{Framed-Protocol}', '%{Framed-IP-Address}', '%{Acct-Delay-Time}', '0', '%{X-Ascend-Session-Svr-Key}')"
-+
-       #######################################################################
-       # Simultaneous Use Checking Queries
-       #######################################################################
-Index: raddb/sql/postgresql/dialup.conf
-===================================================================
-RCS file: /source/radiusd/raddb/sql/postgresql/dialup.conf,v
-retrieving revision 1.9
-diff -u -r1.9 dialup.conf
---- raddb/sql/postgresql/dialup.conf   30 Apr 2008 08:33:40 -0000      1.9
-+++ raddb/sql/postgresql/dialup.conf   22 Jul 2009 13:09:15 -0000
-@@ -153,6 +153,7 @@
- # accounting_stop_query_alt   - query for Accounting start packets
- #                               (alternate in case first query doesn't
- #                                affect any existing rows in the table)
-+# accounting_failed_query   - query for Accounting failed packets
- #######################################################################
- accounting_onoff_query = "UPDATE ${acct_table1} \
-@@ -262,6 +263,29 @@
-   '%{Framed-Protocol}', \
-   NULLIF('%{Framed-IP-Address}', '')::inet, 0)"
-+accounting_failed_query = "INSERT INTO ${acct_table1} \
-+  (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, \
-+   NASPortId, NASPortType, AcctStartTime, AcctAuthentic, \
-+   ConnectInfo_start, CalledStationId, CallingStationId, ServiceType, \
-+   FramedProtocol, FramedIPAddress, AcctStartDelay, XAscendSessionSvrKey) \
-+   VALUES('%{Acct-Session-Id}', \
-+   '%{Acct-Unique-Session-Id}', \
-+   '%{SQL-User-Name}', \
-+   NULLIF('%{Realm}', ''), \
-+   '%{NAS-IP-Address}', \
-+   %{%{NAS-Port}:-NULL}::integer, \
-+   '%{NAS-Port-Type}', \
-+   ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval), \
-+   '%{Acct-Authentic}', \
-+   '%{Connect-Info}', \
-+   '%{Called-Station-Id}', \
-+   '%{Calling-Station-Id}', \
-+   '%{Service-Type}', \
-+   '%{Framed-Protocol}', \
-+   NULLIF('%{Framed-IP-Address}', '')::inet, \
-+   0, \
-+   '%{X-Ascend-Session-Svr-Key}')"
-+
- #######################################################################
- # Group Membership Queries
- #######################################################################
-Index: src/include/radius.h
-===================================================================
-RCS file: /source/radiusd/src/include/radius.h,v
-retrieving revision 1.93
-diff -u -r1.93 radius.h
---- src/include/radius.h       25 Apr 2008 06:20:55 -0000      1.93
-+++ src/include/radius.h       22 Jul 2009 13:09:15 -0000
-@@ -286,6 +286,7 @@
- #define PW_STATUS_ALIVE                       3
- #define PW_STATUS_ACCOUNTING_ON               7
- #define PW_STATUS_ACCOUNTING_OFF      8
-+#define PW_STATUS_FAILED        15
- /*
-  *  Vendor Private Enterprise Codes
-Index: src/modules/rlm_sql/conf.h
-===================================================================
-RCS file: /source/radiusd/src/modules/rlm_sql/conf.h,v
-retrieving revision 1.25
-diff -u -r1.25 conf.h
---- src/modules/rlm_sql/conf.h 14 Nov 2006 21:22:29 -0000      1.25
-+++ src/modules/rlm_sql/conf.h 22 Jul 2009 13:09:16 -0000
-@@ -32,6 +32,7 @@
-       char   *accounting_start_query_alt;
-       char   *accounting_stop_query;
-       char   *accounting_stop_query_alt;
-+      char   *accounting_failed_query;
-       char   *simul_count_query;
-       char   *simul_verify_query;
-       char   *groupmemb_query;
-@@ -74,7 +75,7 @@
- #define ASCEND_PORT_HACK
- #define ASCEND_CHANNELS_PER_LINE        23
--#define CISCO_ACCOUNTING_HACK
-+/* #define CISCO_ACCOUNTING_HACK */
- /* SQL defines */
- #define MAX_QUERY_LEN                 4096
-Index: src/modules/rlm_sql/rlm_sql.c
-===================================================================
-RCS file: /source/radiusd/src/modules/rlm_sql/rlm_sql.c,v
-retrieving revision 1.182
-diff -u -r1.182 rlm_sql.c
---- src/modules/rlm_sql/rlm_sql.c      13 Jun 2008 12:30:07 -0000      1.182
-+++ src/modules/rlm_sql/rlm_sql.c      22 Jul 2009 13:09:16 -0000
-@@ -89,6 +89,8 @@
-        offsetof(SQL_CONFIG,accounting_stop_query), NULL, ""},
-       {"accounting_stop_query_alt", PW_TYPE_STRING_PTR,
-        offsetof(SQL_CONFIG,accounting_stop_query_alt), NULL, ""},
-+      {"accounting_failed_query", PW_TYPE_STRING_PTR,
-+       offsetof(SQL_CONFIG,accounting_failed_query), NULL, ""},
-       {"group_membership_query", PW_TYPE_STRING_PTR,
-        offsetof(SQL_CONFIG,groupmemb_query), NULL, NULL},
-       {"connect_failure_retry_delay", PW_TYPE_INTEGER,
-@@ -1287,6 +1289,32 @@
-                       }
-                       break;
-+           /*
-+            * Got accounting failed packet
-+            */
-+       case PW_STATUS_FAILED:
-+           /*
-+            * Set, escape, and check the user attr here
-+            */
-+           sql_set_user(inst, request, sqlusername, NULL);
-+
-+           radius_xlat(querystr, sizeof(querystr), inst->config->accounting_failed_query, request, sql_escape_func);
-+           query_log(request, inst, querystr);
-+
-+           sqlsocket = sql_get_socket(inst);
-+           if (sqlsocket == NULL)
-+               return(RLM_MODULE_FAIL);
-+           if (*querystr) { /* non-empty query */
-+               if (rlm_sql_query(sqlsocket, inst, querystr)) {
-+                   radlog(L_ERR, "rlm_sql (%s): Couldn't insert SQL accounting FAILED record - %s",
-+                       inst->config->xlat_name,
-+                       (char *)(inst->module->sql_error)(sqlsocket, inst->config));
-+                   ret = RLM_MODULE_FAIL;
-+               }
-+               (inst->module->sql_finish_query)(sqlsocket, inst->config);
-+           }
-+           break;
-+
-                       /*
-                        *      Anything else is ignored.
-                        */
diff --git a/format-security.patch b/format-security.patch
deleted file mode 100644 (file)
index 4d00928..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
---- freeradius-server-2.2.0/src/modules/rlm_ruby/rlm_ruby.c~   2012-12-07 08:22:05.957883039 +0100
-+++ freeradius-server-2.2.0/src/modules/rlm_ruby/rlm_ruby.c    2012-12-07 08:27:18.491205348 +0100
-@@ -91,7 +91,7 @@
-     char *msg;
-     status = FIX2INT(msg_type);
-     msg = STR2CSTR(rb_msg);
--    radlog(status, msg);
-+    radlog(status, "%s", msg);
-     return Qnil;
- }
---- freeradius-server-2.2.6/src/modules/rlm_sql/drivers/rlm_sql_oracle/sql_oracle.c.orig       2014-11-18 20:56:52.000000000 +0100
-+++ freeradius-server-2.2.6/src/modules/rlm_sql/drivers/rlm_sql_oracle/sql_oracle.c    2015-03-22 07:30:08.669953101 +0100
-@@ -242,7 +242,7 @@
-       rlm_sql_oracle_sock *oracle_sock = sqlsocket->conn;
-       if (config->sqltrace)
--              DEBUG(querystr);
-+              DEBUG("%s", querystr);
-       if (oracle_sock->conn == NULL) {
-               radlog(L_ERR, "rlm_sql_oracle: Socket not connected");
-               return SQL_DOWN;
-@@ -300,7 +300,7 @@
-       rlm_sql_oracle_sock *oracle_sock = sqlsocket->conn;
-       if (config->sqltrace)
--              DEBUG(querystr);
-+              DEBUG("%s", querystr);
-       if (oracle_sock->conn == NULL) {
-               radlog(L_ERR, "rlm_sql_oracle: Socket not connected");
-               return SQL_DOWN;
diff --git a/freeradius-server-heimdal.patch b/freeradius-server-heimdal.patch
deleted file mode 100644 (file)
index f31950b..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- freeradius-server-2.1.7/src/modules/rlm_krb5/Makefile.in~  2009-09-14 16:43:29.000000000 +0200
-+++ freeradius-server-2.1.7/src/modules/rlm_krb5/Makefile.in   2009-12-09 15:08:03.257911929 +0100
-@@ -6,7 +6,7 @@
- SRCS       = rlm_krb5.c
- HEADERS    =
- RLM_LIBS   = @krb5_ldflags@
--RLM_CFLAGS = @krb5_cflags@ -I/usr/include/et -DKRB5_DEPRECATED
-+RLM_CFLAGS = @krb5_cflags@ -I/usr/include/et
- include ../rules.mak
index 23b7eb6f5da152e20daa9759a97793e4609fd19d..3f9b8856aaad5c1962f205e37e386c160d3eb7fa 100644 (file)
@@ -1,6 +1,6 @@
-diff -dur -x '*~' -x '*.orig' -x '*.rej' freeradius-server-3.0.17.orig/raddb/radiusd.conf.in freeradius-server-3.0.17/raddb/radiusd.conf.in
---- freeradius-server-3.0.17.orig/raddb/radiusd.conf.in        2018-10-09 14:36:25.000000000 +0200
-+++ freeradius-server-3.0.17/raddb/radiusd.conf.in     2018-10-09 14:37:15.000000000 +0200
+diff -dur -x '*~' freeradius-server-3.0.17.orig/raddb/radiusd.conf.in freeradius-server-3.0.17/raddb/radiusd.conf.in
+--- freeradius-server-3.0.17.orig/raddb/radiusd.conf.in        2018-10-10 10:12:41.000000000 +0200
++++ freeradius-server-3.0.17/raddb/radiusd.conf.in     2018-10-10 10:13:24.000000000 +0200
 @@ -105,7 +105,7 @@
  #     make
  #     make install
@@ -10,9 +10,25 @@ diff -dur -x '*~' -x '*.orig' -x '*.rej' freeradius-server-3.0.17.orig/raddb/rad
  
  #  pidfile: Where to place the PID of the RADIUS server.
  #
-diff -dur -x '*~' -x '*.orig' -x '*.rej' freeradius-server-3.0.17.orig/src/main/mainconfig.c freeradius-server-3.0.17/src/main/mainconfig.c
+diff -dur -x '*~' freeradius-server-3.0.17.orig/scripts/install.mk freeradius-server-3.0.17/scripts/install.mk
+--- freeradius-server-3.0.17.orig/scripts/install.mk   2018-04-17 19:12:27.000000000 +0200
++++ freeradius-server-3.0.17/scripts/install.mk        2018-10-10 10:19:46.000000000 +0200
+@@ -141,7 +141,11 @@
+         endif
+     else
+         ifeq "$${TGT_INSTALLDIR}" ".."
+-            TGT_INSTALLDIR := $${libdir}
++          ifneq (,$(filter lib%,${1}))
++              TGT_INSTALLDIR := $${libdir}
++          else
++              TGT_INSTALLDIR := $${libdir}/freeradius
++          endif
+         endif
+     endif
+diff -dur -x '*~' freeradius-server-3.0.17.orig/src/main/mainconfig.c freeradius-server-3.0.17/src/main/mainconfig.c
 --- freeradius-server-3.0.17.orig/src/main/mainconfig.c        2018-04-17 19:12:27.000000000 +0200
-+++ freeradius-server-3.0.17/src/main/mainconfig.c     2018-10-09 14:39:21.000000000 +0200
++++ freeradius-server-3.0.17/src/main/mainconfig.c     2018-10-10 10:13:24.000000000 +0200
 @@ -183,7 +183,7 @@
        { "sbindir", FR_CONF_POINTER(PW_TYPE_STRING, &sbindir), "${prefix}/sbin"},
        { "logdir", FR_CONF_POINTER(PW_TYPE_STRING, &radlog_dir), "${localstatedir}/log"},
diff --git a/freeradius-server-makefile.patch b/freeradius-server-makefile.patch
deleted file mode 100644 (file)
index 8ed9d86..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -dur freeradius-1.0.1.orig/Makefile freeradius-1.0.1/Makefile
---- freeradius-1.0.1.orig/Makefile     2004-06-09 19:31:11.000000000 +0200
-+++ freeradius-1.0.1/Makefile  2004-09-30 14:57:42.084560009 +0200
-@@ -11,7 +11,7 @@
- .PHONY: all clean install
--SUBDIRS               = $(LTDL_SUBDIRS) $(wildcard src raddb scripts doc)
-+SUBDIRS               = src raddb scripts doc
- WHAT_TO_MAKE  = all
- all:
diff --git a/freeradius-server-oracle.patch b/freeradius-server-oracle.patch
deleted file mode 100644 (file)
index b952180..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- freeradius-server-2.2.6/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.in.orig       2014-11-18 20:56:52.000000000 +0100
-+++ freeradius-server-2.2.6/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.in    2015-03-21 21:42:12.521433499 +0100
-@@ -86,7 +86,7 @@
-               if test "x$oracle_lib_dir" != "x" ; then
-                       ORACLE_LIBDIR_SWITCH="-L${oracle_lib_dir} "
-               fi
--              for oracle_version in 10 11 9 ""; do
-+              for oracle_version in 12 10 11 9 ""; do
-                       LIBS="$old_LIBS $ORACLE_LIBDIR_SWITCH -lclntsh -lnnz${oracle_version}"
-                       AC_TRY_LINK([#include <oci.h>
-               
diff --git a/freeradius-server-rubyhdrs.patch b/freeradius-server-rubyhdrs.patch
deleted file mode 100644 (file)
index de3341f..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
---- freeradius-server-2.1.7/src/modules/rlm_ruby/configure.in~ 2009-09-14 16:43:29.000000000 +0200
-+++ freeradius-server-2.1.7/src/modules/rlm_ruby/configure.in  2010-03-01 13:53:59.571124248 +0100
-@@ -48,7 +48,7 @@
-               RB_LIBS=`${RUBYBIN} -e "require 'rbconfig'; puts RbConfig::CONFIG.fetch('LIBRUBYARG_SHARED')"`
-               AC_MSG_NOTICE([libs: $RB_LIBS])
--              RB_INC_DIR=`${RUBYBIN} -e "require 'rbconfig'; puts RbConfig::CONFIG.fetch('includedir')"`
-+              RB_INC_DIR=`${RUBYBIN} -e "require 'rbconfig'; puts RbConfig::CONFIG.fetch('rubyhdrdir')"`
-               AC_MSG_NOTICE([include: $RB_INC_DIR])
-               RB_CFLAGS=`${RUBYBIN} -e "require 'rbconfig'; puts RbConfig::CONFIG.fetch('CFLAGS')"`
-@@ -57,8 +57,11 @@
-               RB_ARCH_DIR=`${RUBYBIN} -e "require 'rbconfig'; puts RbConfig::CONFIG.fetch('archdir')"`
-               AC_MSG_NOTICE([arch: $RB_ARCH_DIR])
-+              RB_ARCH_INC_DIR=`${RUBYBIN} -r rbconfig -e 'puts RbConfig.expand("$(rubyhdrdir)/$(arch)")'`
-+              AC_MSG_NOTICE([arch: $RB_ARCH_DIR])
-+
-               old_CFLAGS=$CFLAGS
--              CFLAGS="$CFLAGS $RB_CFLAGS -I${RB_ARCH_DIR} -I${RB_INC_DIR} -I${RB_INC_DIR}/ruby-${RB_VERSION}"
-+              CFLAGS="$CFLAGS $RB_CFLAGS -I${RB_ARCH_INC_DIR} -I${RB_INC_DIR} -I${RB_INC_DIR}/ruby-${RB_VERSION}"
-               AC_MSG_NOTICE("$CFLAGS");
-               FR_SMART_CHECK_INCLUDE(ruby.h)
-               if test "x$ac_cv_header_ruby_h" != "xyes"; then
---- freeradius-server-2.1.7/src/modules/rlm_ruby/rlm_ruby.c~   2009-09-14 16:43:29.000000000 +0200
-+++ freeradius-server-2.1.7/src/modules/rlm_ruby/rlm_ruby.c    2010-03-01 15:21:45.111123747 +0100
-@@ -113,7 +113,7 @@
-     }
-     /* Get the array size. */
--    outertuplesize = RARRAY(rb_value)->len;
-+    outertuplesize = RARRAY_LEN(rb_value);
-     for (i = 0; i < outertuplesize; i++) {
-         VALUE pTupleElement = rb_ary_entry(rb_value, i);
-@@ -124,7 +124,7 @@
-             /* Check if it's a pair */
-             int tuplesize;
--            if ((tuplesize = RARRAY(pTupleElement)->len) != 2) {
-+            if ((tuplesize = RARRAY_LEN(pTupleElement)) != 2) {
-                 radlog(L_ERR, "%s: tuple element %d is a tuple "
-                         " of size %d. must be 2\n", function_name,
-                         i, tuplesize);
index 3ed54b2d80c184f299745b4d8244e8fcf6bf6f38..d57890c22aa17d51d25c6922e40e8296c77cbcaf 100644 (file)
@@ -9,7 +9,6 @@
 %bcond_without instantclient           # build Oracle SQL extension module against oracle-instantclient package
 %bcond_without redis                   # rlm_redis and rlm_rediswho extension modules
 %bcond_without ruby                    # rlm_ruby extension module
-%bcond_with    failed_calls_acc        # with failed calls accounting support
 #
 %include       /usr/lib/rpm/macros.perl
 #
@@ -28,17 +27,8 @@ Source3:     %{name}.pam
 Source4:       %{name}.tmpfiles
 Patch0:                %{name}-config.patch
 Patch1:                %{name}-libdir.patch
-Patch2:                %{name}-makefile.patch
-Patch3:                %{name}-rundir.patch
-Patch4:                %{name}-heimdal.patch
-Patch5:                %{name}-rubyhdrs.patch
-# Patch taken from http://download.ag-projects.com/CDRTool/contrib/freeradius-brandinger/
-Patch6:                failed_calls_accounting.patch
-#Patch7:               http://eduroam.pl/Dokumentacja/cui-fr-2.2.0.patch
-Patch8:                format-security.patch
-Patch9:                am.patch
-Patch10:       %{name}-oracle.patch
-Patch11:       aclocal.patch
+Patch2:                %{name}-rundir.patch
+Patch3:                aclocal.patch
 URL:           http://www.freeradius.org/
 %{?with_firebird:BuildRequires:        Firebird-devel}
 BuildRequires: autoconf >= 2.59
@@ -87,6 +77,7 @@ Provides:     group(radius)
 Provides:      user(radius)
 Obsoletes:     cistron-radius
 Obsoletes:     freeradius < 2.0
+Obsoletes:     freeradius-server-module-unix < 3.0
 Conflicts:     logrotate < 3.8.0
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -278,18 +269,6 @@ UnixODBC driver for FreeRADIUS server SQL module.
 %description module-sql-unixodbc -l pl.UTF-8
 Sterownik UnixODBC dla moduÅ‚u SQL serwera FreeRADIUS.
 
-%package module-unix
-Summary:       Unix module for FreeRADIUS server
-Summary(pl.UTF-8):     ModuÅ‚ Unix do serwera FreeRADIUS
-Group:         Networking/Daemons/Radius
-Requires:      %{name} = %{version}-%{release}
-
-%description module-unix
-Unix module for FreeRADIUS server.
-
-%description module-unix -l pl.UTF-8
-ModuÅ‚ Unix do serwera FreeRADIUS.
-
 %package libs
 Summary:       FreeRADIUS server libraries
 Summary(pl.UTF-8):     Biblioteki serwera FreeRADIUS
@@ -334,16 +313,8 @@ Baza danych MIB dla serwera FreeRADIUS.
 
 %patch0 -p1
 %patch1 -p1
-#%patch2 -p1
+%patch2 -p1
 %patch3 -p1
-#%patch4 -p1
-#%patch5 -p1
-%{?with_failed_calls_acc:%patch6 -p0}
-#%patch7 -p1
-#%patch8 -p1
-#%patch9 -p1
-#%patch10 -p1
-%patch11 -p1
 
 %build
 # Keep it for future when ac/am regeneration will be ok
@@ -396,6 +367,7 @@ done
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,pam.d} \
        $RPM_BUILD_ROOT%{_var}/log/{,archive}/freeradius/radacct \
+       $RPM_BUILD_ROOT/var/run/freeradius \
        $RPM_BUILD_ROOT%{mibdir} \
        $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
 
@@ -415,6 +387,13 @@ install mibs/FREERADIUS-*.mib $RPM_BUILD_ROOT%{mibdir}
        $RPM_BUILD_ROOT%{_sbindir}/rc.*
 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/freeradius
 
+%if %{without oci}
+%{__rm} -r $RPM_BUILD_ROOT%{_sysconfdir}/raddb/mods-config/sql/*/oracle
+%endif
+%{__rm} -r $RPM_BUILD_ROOT%{_sysconfdir}/raddb/mods-config/sql/*/mssql
+
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}{,/freeradius}/*.a
+
 # prepare cleaned up docs for rpm
 install -d docs-rpm
 cp -a doc scripts docs-rpm
@@ -438,6 +417,14 @@ if [ "`id -g radius`" = "99" ]; then
 fi
 
 %post
+if [ ! -e /etc/raddb/certs/server.pem ] ; then
+       cd /etc/raddb/certs
+       make client.key || : # otherwise it doesn't work
+       ./bootstrap || :
+       chown root:radius * || :
+       chmod 640 * || :
+fi
+
 /sbin/chkconfig --add %{name}
 %service %{name} restart "%{name} daemon"
 
@@ -477,16 +464,17 @@ fi
 %module_scripts module-sql-postgresql
 %module_scripts module-sql-sqlite
 %module_scripts module-sql-unixodbc
-%module_scripts module-unix
 
 %files
 %defattr(644,root,root,755)
 %doc COPYRIGHT CREDITS README.rst docs-rpm/*
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/freeradius-server
 %attr(754,root,root) /etc/rc.d/init.d/freeradius-server
+%attr(755,root,root) %{_bindir}/dhcpclient
+%attr(755,root,root) %{_bindir}/map_unit
 %attr(755,root,root) %{_bindir}/rad_counter
+%attr(755,root,root) %{_bindir}/radattr
 %attr(755,root,root) %{_bindir}/radclient
-%attr(755,root,root) %{_bindir}/radconf2xml
 %attr(755,root,root) %{_bindir}/radcrypt
 %attr(755,root,root) %{_bindir}/radeapclient
 %attr(755,root,root) %{_bindir}/radlast
@@ -495,44 +483,35 @@ fi
 %attr(755,root,root) %{_bindir}/radtest
 %attr(755,root,root) %{_bindir}/radwho
 %attr(755,root,root) %{_bindir}/radzap
-%attr(755,root,root) %{_bindir}/rlm_dbm_cat
-%attr(755,root,root) %{_bindir}/rlm_dbm_parser
 %attr(755,root,root) %{_bindir}/rlm_ippool_tool
 %attr(755,root,root) %{_bindir}/smbencrypt
 %attr(755,root,root) %{_sbindir}/checkrad
 %attr(755,root,root) %{_sbindir}/raddebug
 %attr(755,root,root) %{_sbindir}/radiusd
 %attr(755,root,root) %{_sbindir}/radmin
-%attr(755,root,root) %{_sbindir}/radwatch
 %dir %{_libdir}/freeradius
-%attr(755,root,root) %{_libdir}/freeradius/rlm_acctlog*.so
-%{_libdir}/freeradius/rlm_acctlog*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_acct_unique*.so
-%{_libdir}/freeradius/rlm_acct_unique*.la
+%attr(755,root,root) %{_libdir}/freeradius/proto_dhcp*.so
+%{_libdir}/freeradius/proto_dhcp*.la
+%attr(755,root,root) %{_libdir}/freeradius/proto_vmps*.so
+%{_libdir}/freeradius/proto_vmps*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_always*.so
 %{_libdir}/freeradius/rlm_always*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_attr_filter*.so
 %{_libdir}/freeradius/rlm_attr_filter*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_attr_rewrite*.so
-%{_libdir}/freeradius/rlm_attr_rewrite*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_cache*.so
 %{_libdir}/freeradius/rlm_cache*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_caching*.so
-%{_libdir}/freeradius/rlm_caching*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_chap*.so
 %{_libdir}/freeradius/rlm_chap*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_checkval*.so
-%{_libdir}/freeradius/rlm_checkval*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_copy_packet*.so
-%{_libdir}/freeradius/rlm_copy_packet*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_counter*.so
 %{_libdir}/freeradius/rlm_counter*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_cram*.so
 %{_libdir}/freeradius/rlm_cram*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_dbm*.so
-%{_libdir}/freeradius/rlm_dbm*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_date*.so
+%{_libdir}/freeradius/rlm_date*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_detail*.so
 %{_libdir}/freeradius/rlm_detail*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_dhcp*.so
+%{_libdir}/freeradius/rlm_dhcp*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_digest*.so
 %{_libdir}/freeradius/rlm_digest*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_dynamic_clients*.so
@@ -547,14 +526,12 @@ fi
 %{_libdir}/freeradius/rlm_expiration*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_expr*.so
 %{_libdir}/freeradius/rlm_expr*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_fastusers*.so
-%{_libdir}/freeradius/rlm_fastusers*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_files*.so
 %{_libdir}/freeradius/rlm_files*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_idn*.so
+%{_libdir}/freeradius/rlm_idn*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_ippool*.so
 %{_libdir}/freeradius/rlm_ippool*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_jradius*.so
-%{_libdir}/freeradius/rlm_jradius*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_linelog*.so
 %{_libdir}/freeradius/rlm_linelog*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_logintime*.so
@@ -565,39 +542,51 @@ fi
 %{_libdir}/freeradius/rlm_pap*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_passwd*.so
 %{_libdir}/freeradius/rlm_passwd*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_policy*.so
-%{_libdir}/freeradius/rlm_policy*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_preprocess*.so
 %{_libdir}/freeradius/rlm_preprocess*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_protocol_filter*.so
-%{_libdir}/freeradius/rlm_protocol_filter*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_radutmp*.so
 %{_libdir}/freeradius/rlm_radutmp*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_realm*.so
 %{_libdir}/freeradius/rlm_realm*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_replicate*.so
 %{_libdir}/freeradius/rlm_replicate*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_sim_files*.so
-%{_libdir}/freeradius/rlm_sim_files*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_rest*.so
+%{_libdir}/freeradius/rlm_rest*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_smsotp*.so
 %{_libdir}/freeradius/rlm_smsotp*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_soh*.so
 %{_libdir}/freeradius/rlm_soh*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_sql-%{version}.so
+%attr(755,root,root) %{_libdir}/freeradius/rlm_sometimes*.so
+%{_libdir}/freeradius/rlm_sometimes*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql.so
-%{_libdir}/freeradius/rlm_sql-%{version}.la
 %{_libdir}/freeradius/rlm_sql.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_sql_freetds*.so
+%{_libdir}/freeradius/rlm_sql_freetds*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_sql_null*.so
+%{_libdir}/freeradius/rlm_sql_null*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sqlcounter*.so
 %{_libdir}/freeradius/rlm_sqlcounter*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sqlhpwippool*.so
 %{_libdir}/freeradius/rlm_sqlhpwippool*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sqlippool*.so
 %{_libdir}/freeradius/rlm_sqlippool*.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_sql_log*.so
-%{_libdir}/freeradius/rlm_sql_log*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_test*.so
+%{_libdir}/freeradius/rlm_test*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_unbound*.so
+%{_libdir}/freeradius/rlm_unbound*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_unix*.so
+%{_libdir}/freeradius/rlm_unix*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_unpack*.so
+%{_libdir}/freeradius/rlm_unpack*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_utf8*.so
+%{_libdir}/freeradius/rlm_utf8*.la
 %attr(755,root,root) %{_libdir}/freeradius/rlm_wimax*.so
 %{_libdir}/freeradius/rlm_wimax*.la
+%attr(755,root,root) %{_libdir}/freeradius/rlm_yubikey*.so
+%{_libdir}/freeradius/rlm_yubikey*.la
 %{_datadir}/freeradius
+%{_mandir}/man1/dhcpclient.1*
+%{_mandir}/man1/rad_counter.1*
 %{_mandir}/man1/radclient.1*
 %{_mandir}/man1/radeapclient.1*
 %{_mandir}/man1/radlast.1*
@@ -605,32 +594,29 @@ fi
 %{_mandir}/man1/radwho.1*
 %{_mandir}/man1/radzap.1*
 %{_mandir}/man1/smbencrypt.1*
-%{_mandir}/man5/acct_users.5*
 %{_mandir}/man5/checkrad.5*
 %{_mandir}/man5/clients.conf.5*
 %{_mandir}/man5/dictionary.5*
 %{_mandir}/man5/radiusd.conf.5*
 %{_mandir}/man5/radrelay.conf.5*
-%{_mandir}/man5/rlm_acct_unique.5*
 %{_mandir}/man5/rlm_always.5*
 %{_mandir}/man5/rlm_attr_filter.5*
-%{_mandir}/man5/rlm_attr_rewrite.5*
 %{_mandir}/man5/rlm_chap.5*
 %{_mandir}/man5/rlm_counter.5*
 %{_mandir}/man5/rlm_detail.5*
 %{_mandir}/man5/rlm_digest.5*
 %{_mandir}/man5/rlm_expr.5*
 %{_mandir}/man5/rlm_files.5*
+%{_mandir}/man5/rlm_idn.5*
 %{_mandir}/man5/rlm_mschap.5*
 %{_mandir}/man5/rlm_pap.5*
 %{_mandir}/man5/rlm_passwd.5*
-%{_mandir}/man5/rlm_policy.5*
 %{_mandir}/man5/rlm_realm.5*
 %{_mandir}/man5/rlm_sql.5*
-%{_mandir}/man5/rlm_sql_log.5*
+%{_mandir}/man5/rlm_unbound.5*
+%{_mandir}/man5/rlm_unix.5*
 %{_mandir}/man5/unlang.5*
 %{_mandir}/man5/users.5*
-%{_mandir}/man8/radconf2xml.8*
 %{_mandir}/man8/radcrypt.8*
 %{_mandir}/man8/raddebug.8*
 %{_mandir}/man8/radiusd.8*
@@ -638,9 +624,6 @@ fi
 %{_mandir}/man8/radrelay.8*
 %{_mandir}/man8/radsniff.8*
 %{_mandir}/man8/radsqlrelay.8*
-%{_mandir}/man8/radwatch.8*
-%{_mandir}/man8/rlm_dbm_cat.8*
-%{_mandir}/man8/rlm_dbm_parser.8*
 %{_mandir}/man8/rlm_ippool_tool.8*
 %attr(771,root,radius) %dir %{_var}/log/freeradius
 %attr(771,root,radius) %dir %{_var}/log/freeradius/radacct
@@ -650,90 +633,185 @@ fi
 /usr/lib/tmpfiles.d/%{name}.conf
 %defattr(640,root,radius,750)
 %dir %{_sysconfdir}/raddb
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/acct_users
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/attrs*
+%doc %{_sysconfdir}/raddb/README.rst
+%dir %{_sysconfdir}/raddb/certs
+%{_sysconfdir}/raddb/certs/Makefile
+%doc %{_sysconfdir}/raddb/certs/README
+%ghost %{_sysconfdir}/raddb/certs/01.pem
+%ghost %{_sysconfdir}/raddb/certs/02.pem
+%attr(755,root,root) %{_sysconfdir}/raddb/certs/bootstrap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/ca.cnf
+%ghost %{_sysconfdir}/raddb/certs/ca.der
+%ghost %{_sysconfdir}/raddb/certs/ca.key
+%ghost %{_sysconfdir}/raddb/certs/ca.pem
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/client.cnf
+%ghost %{_sysconfdir}/raddb/certs/client.crt
+%{_sysconfdir}/raddb/certs/client.csr
+%ghost %{_sysconfdir}/raddb/certs/client.key
+%ghost %{_sysconfdir}/raddb/certs/client.p12
+%ghost %{_sysconfdir}/raddb/certs/client.pem
+%ghost %{_sysconfdir}/raddb/certs/dh
+%ghost %{_sysconfdir}/raddb/certs/index.txt
+%ghost %{_sysconfdir}/raddb/certs/index.txt.attr
+%ghost %{_sysconfdir}/raddb/certs/index.txt.attr.old
+%ghost %{_sysconfdir}/raddb/certs/index.txt.old
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/inner-server.cnf
+%{_sysconfdir}/raddb/certs/passwords.mk
+%ghost %{_sysconfdir}/raddb/certs/serial
+%ghost %{_sysconfdir}/raddb/certs/serial.old
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/server.cnf
+%ghost %{_sysconfdir}/raddb/certs/server.crt
+%ghost %{_sysconfdir}/raddb/certs/server.csr
+%ghost %{_sysconfdir}/raddb/certs/server.key
+%ghost %{_sysconfdir}/raddb/certs/server.p12
+%ghost %{_sysconfdir}/raddb/certs/server.pem
+%ghost %{_sysconfdir}/raddb/certs/user@example.org.pem
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/xpextensions
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/clients.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/dictionary
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/eap.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/experimental.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/hints
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/huntgroups
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.conf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.txt
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/panic.gdb
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/preproxy_users
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/proxy.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/radiusd.conf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sql.conf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sqlippool.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/templates.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/users
-%dir %{_sysconfdir}/raddb/certs
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/*.cnf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/xpextensions
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/Makefile
-%doc %{_sysconfdir}/raddb/certs/README
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/certs/bootstrap
-%dir %{_sysconfdir}/raddb/modules
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/acct_unique
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/always
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/attr_filter
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/attr_rewrite
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/cache
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/chap
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/checkval
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/counter
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/cui
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/detail
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/detail.example.com
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/detail.log
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/dhcp_sqlippool
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/digest
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/dynamic_clients
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/echo
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/etc_group
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/exec
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/expiration
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/expr
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/files
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/inner-eap
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/ippool
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/linelog
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/logintime
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/mac2ip
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/mac2vlan
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/mschap
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/ntlm_auth
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/opendirectory
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/pap
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/passwd
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/policy
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/preprocess
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/radutmp
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/radrelay
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/realm
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/replicate
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/smbpasswd
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/smsotp
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/soh
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/sql_log
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/sqlcounter_expire_on_login
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/sradutmp
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/wimax
+%dir %{_sysconfdir}/raddb/mods-available
+%doc %{_sysconfdir}/raddb/mods-available/README.rst
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/abfab_psk_sql
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/always
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/attr_filter
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/cache
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/cache_eap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/chap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/couchbase
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/counter
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/cui
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/date
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/detail
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/detail.example.com
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/detail.log
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/dhcp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/dhcp_sqlippool
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/digest
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/dynamic_clients
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/eap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/echo
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/etc_group
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/exec
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/expiration
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/expr
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/files
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/idn
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/inner-eap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/ippool
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/linelog
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/logintime
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/mac2ip
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/mac2vlan
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/moonshot-targeted-ids
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/mschap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/ntlm_auth
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/opendirectory
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/pap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/passwd
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/preprocess
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/radutmp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/realm
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/replicate
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/rest
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/smbpasswd
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/smsotp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/soh
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/sometimes
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/sql
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/sqlcounter
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/sqlippool
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/sradutmp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/unbound
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/unix
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/unpack
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/utf8
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/wimax
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/yubikey
+%dir %{_sysconfdir}/raddb/mods-config
+%doc %{_sysconfdir}/raddb/mods-config/README.rst
+%dir %{_sysconfdir}/raddb/mods-config/attr_filter
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/attr_filter/access_challenge
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/attr_filter/access_reject
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/attr_filter/accounting_response
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/attr_filter/post-proxy
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/attr_filter/pre-proxy
+%dir %{_sysconfdir}/raddb/mods-config/files
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/files/accounting
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/files/authorize
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/files/pre-proxy
+%dir %{_sysconfdir}/raddb/mods-config/preprocess
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/preprocess/hints
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/preprocess/huntgroups
+%dir %{_sysconfdir}/raddb/mods-config/sql
+%dir %{_sysconfdir}/raddb/mods-config/sql/counter
+%dir %{_sysconfdir}/raddb/mods-config/sql/cui
+%dir %{_sysconfdir}/raddb/mods-config/sql/ippool
+%dir %{_sysconfdir}/raddb/mods-config/sql/ippool-dhcp
+%dir %{_sysconfdir}/raddb/mods-config/sql/main
+%dir %{_sysconfdir}/raddb/mods-config/sql/moonshot-targeted-ids
+%dir %{_sysconfdir}/raddb/mods-config/unbound
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/unbound/default.conf
+%dir %{_sysconfdir}/raddb/mods-enabled
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/always
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/attr_filter
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/cache_eap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/chap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/date
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/detail
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/detail.log
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/digest
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/dynamic_clients
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/eap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/echo
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/exec
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/expiration
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/expr
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/files
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/linelog
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/logintime
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/mschap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/ntlm_auth
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/pap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/passwd
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/preprocess
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/radutmp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/realm
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/replicate
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/soh
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/sradutmp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/unix
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/unpack
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-enabled/utf8
+%dir %{_sysconfdir}/raddb/policy.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/abfab-tr
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/accounting
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/canonicalization
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/control
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/cui
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/debug
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/dhcp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/eap
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/filter
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/moonshot-targeted-ids
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/policy.d/operator-name
 %dir %{_sysconfdir}/raddb/sites-available
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sites-available/*
 %dir %{_sysconfdir}/raddb/sites-enabled
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sites-enabled/*
-%dir %{_sysconfdir}/raddb/sql
-%dir %{_sysconfdir}/raddb/sql/mssql
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sql/mssql/*
-%dir %{_sysconfdir}/raddb/sql/ndb
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sql/ndb/*
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/trigger.conf
 
 %if %{with kerberos5}
 %files module-krb5
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/krb5
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/krb5
 %attr(755,root,root) %{_libdir}/freeradius/rlm_krb5*.so
 %{_libdir}/freeradius/rlm_krb5*.la
 %endif
@@ -741,55 +819,57 @@ fi
 %if %{with ldap}
 %files module-ldap
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/ldap.attrmap
-%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/ldap
+%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/ldap
 %attr(755,root,root) %{_libdir}/freeradius/rlm_ldap*.so
 %{_libdir}/freeradius/rlm_ldap*.la
 %endif
 
 %files module-otp
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/otp
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/otp
 %attr(755,root,root) %{_libdir}/freeradius/rlm_otp*.so
 %{_libdir}/freeradius/rlm_otp*.la
 
 %files module-pam
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/pam
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/pam
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/radius
 %attr(755,root,root) %{_libdir}/freeradius/rlm_pam*.so
 %{_libdir}/freeradius/rlm_pam*.la
 
 %files module-perl
 %defattr(644,root,root,755)
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/example.pl
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/perl
+%dir %{_sysconfdir}/raddb/mods-config/perl
+%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/perl/example.pl
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/perl
 %attr(755,root,root) %{_libdir}/freeradius/rlm_perl*.so
 %{_libdir}/freeradius/rlm_perl*.la
 
 %files module-python
 %defattr(644,root,root,755)
+%dir %{_sysconfdir}/raddb/mods-config/python
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/python
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/python/example.py
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/python/radiusd.py
 %attr(755,root,root) %{_libdir}/freeradius/rlm_python*.so
 %{_libdir}/freeradius/rlm_python*.la
 
 %if %{with redis}
 %files module-redis
 %defattr(644,root,root,755)
-%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/redis
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/rediswho
-%attr(755,root,root) %{_libdir}/freeradius/rlm_redis-%{version}.so
+%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/redis
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-available/rediswho
 %attr(755,root,root) %{_libdir}/freeradius/rlm_redis.so
-%{_libdir}/freeradius/rlm_redis-%{version}.la
 %{_libdir}/freeradius/rlm_redis.la
-%attr(755,root,root) %{_libdir}/freeradius/rlm_rediswho-%{version}.so
 %attr(755,root,root) %{_libdir}/freeradius/rlm_rediswho.so
-%{_libdir}/freeradius/rlm_rediswho-%{version}.la
 %{_libdir}/freeradius/rlm_rediswho.la
 %endif
 
 %if %{with ruby}
 %files module-ruby
 %defattr(644,root,root,755)
+%dir %{_sysconfdir}/raddb/mods-config/ruby
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/ruby/example.rb
 %attr(755,root,root) %{_libdir}/freeradius/rlm_ruby*.so
 %{_libdir}/freeradius/rlm_ruby*.la
 %endif
@@ -803,29 +883,33 @@ fi
 
 %files module-sql-mysql
 %defattr(644,root,root,755)
-%dir %{_sysconfdir}/raddb/sql/mysql
-%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sql/mysql/*
+%dir %{_sysconfdir}/raddb/mods-config/sql/*/mysql
+%dir %{_sysconfdir}/raddb/mods-config/sql/*/ndb
+%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/sql/*/mysql/*
+%attr(640,root,radius) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/sql/*/ndb/*
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql_mysql*.so
 %{_libdir}/freeradius/rlm_sql_mysql*.la
 
 %if %{with oci}
 %files module-sql-oracle
 %defattr(644,root,root,755)
-%dir %{_sysconfdir}/raddb/sql/oracle
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sql/oracle/*
+%dir %{_sysconfdir}/raddb/mods-config/sql/*/oracle
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/sql/*/oracle/*
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql_oracle*.so
 %{_libdir}/freeradius/rlm_sql_oracle*.la
 %endif
 
 %files module-sql-postgresql
 %defattr(644,root,root,755)
-%dir %{_sysconfdir}/raddb/sql/postgresql
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/sql/postgresql/*
+%dir %{_sysconfdir}/raddb/mods-config/sql/*/postgresql
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/sql/*/postgresql/*
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql_postgresql*.so
 %{_libdir}/freeradius/rlm_sql_postgresql*.la
 
 %files module-sql-sqlite
 %defattr(644,root,root,755)
+%dir %{_sysconfdir}/raddb/mods-config/sql/*/sqlite
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/mods-config/sql/*/sqlite/*
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql_sqlite*.so
 %{_libdir}/freeradius/rlm_sql_sqlite*.la
 
@@ -834,27 +918,21 @@ fi
 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql_unixodbc*.so
 %{_libdir}/freeradius/rlm_sql_unixodbc*.la
 
-%files module-unix
-%defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/raddb/modules/unix
-%attr(755,root,root) %{_libdir}/freeradius/rlm_unix*.so
-%{_libdir}/freeradius/rlm_unix*.la
-%{_mandir}/man5/rlm_unix.5*
-
 %files libs
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libfreeradius-eap-%{version}.so
-%attr(755,root,root) %{_libdir}/libfreeradius-radius-??????.so
+%attr(755,root,root) %{_libdir}/libfreeradius-dhcp.so
+%attr(755,root,root) %{_libdir}/libfreeradius-eap.so
+%attr(755,root,root) %{_libdir}/libfreeradius-radius.so
+%attr(755,root,root) %{_libdir}/libfreeradius-server.so
 %dir %{_libdir}/freeradius
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libfreeradius-eap.so
-%attr(755,root,root) %{_libdir}/libfreeradius-radius.so
 %{_includedir}/freeradius
 
 %files -n mibs-%{name}
 %defattr(644,root,root,755)
-%doc mibs/RADIUS-*.chart
-%{mibdir}/FREERADIUS-PRODUCT-RADIUSD-MIB.txt
-%{mibdir}/FREERADIUS-SMI.txt
+%{mibdir}/FREERADIUS-MGMT-MIB.mib
+%{mibdir}/FREERADIUS-NOTIFICATION-MIB.mib
+%{mibdir}/FREERADIUS-PRODUCT-RADIUSD-MIB.mib
+%{mibdir}/FREERADIUS-SMI.mib
This page took 0.202218 seconds and 4 git commands to generate.