#  -*- text -*-
#
#
#  $Id: f6a5908788b69d5b5b12dd4bfb41a9dd011d8b9f $

#######################################################################
#
#  = Files Module
#
#  The `users` file as located in `mods-config/files/authorize`.
#  (Livingston-style format).
#
#  See the
#  doc/antora/modules/reference/pages/raddb/mods-config/files/users.adoc
#  file for information on the format of the input file, and how it
#  operates.
#

#
#  == Configuration Settings
#
files {
	#
	#  moddir:: Search for files in a subdirectory of mods-config which
	#  matches this instance of the files module.
	#
	moddir = ${modconfdir}/${.:instance}

	#
	#  key:: The default key attribute to use for matches.
	#
	#  The content of this attribute is used to match the `name` of the
	#  entry.
	#
	#  Note that unlike v4, the key does not have to be a string, but
	#  could instead be an IP address or netmask!
	#
#	key = "%{Stripped-User-Name || User-Name}"

	#
	#  filename:: The old `users` style file is now located here.
	#
	filename = ${moddir}/authorize

	#
	#  match_attr:: List and attribute to populate with the `name` of the
	#  matched entry.
	#
	#  NOTE: the attriubte type should be capable of holding data of the
	#  type used as key values. Particularly useful if matching IP
	#  addresses to subnets, since the populated value will be the
	#  subnet. In that case it is best to use `0.0.0.0/0` in place of
	#  `DEFAULT` for any catch-all entries.
	#
#	match_attr = control.User-Category

	#
	#  v3_compat:: Version 3 compatibility flag.
	#
	#  When this flag is set, any enumeration names (e.g. Service-Type :=
	#  Framed-User) do not need to have the v4 "::" prefix. This flag
	#  helps with migrating v3 configurations to v4.
	#
	#  Default value "false". Allowed vaues, `true` and `false`.
	#
#	v3_compat = false
}

#
#  == An instance of the `files` module for use in processing accounting packets
#
files files_accounting {
#	key = "%{Stripped-User-Name || User-Name}"
	filename = ${modconfdir}/files/accounting
}
