]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
6 years agos/fr_skip_spaces/fr_skip_whitespace/
Arran Cudbard-Bell [Fri, 30 Aug 2019 20:07:52 +0000 (16:07 -0400)] 
s/fr_skip_spaces/fr_skip_whitespace/

6 years agoMore whitespace macros
Arran Cudbard-Bell [Fri, 30 Aug 2019 20:06:20 +0000 (16:06 -0400)] 
More whitespace macros

6 years agoFix fr_fprintf() to use the file stream instead of fd
Jorge Pereira [Fri, 30 Aug 2019 18:41:29 +0000 (15:41 -0300)] 
Fix fr_fprintf() to use the file stream instead of fd

Just use the fputs() instead of get the fileno()/write()

6 years agoClean up
Jorge Pereira [Fri, 30 Aug 2019 18:28:34 +0000 (15:28 -0300)] 
Clean up

6 years agouse get_inst() function, which does the right thing
Alan T. DeKok [Fri, 30 Aug 2019 17:45:34 +0000 (13:45 -0400)] 
use get_inst() function, which does the right thing

6 years agoSQLite: Don't require a lease to have expired if we reallocate it to the previous...
Terry Burton [Fri, 30 Aug 2019 14:59:16 +0000 (15:59 +0100)] 
SQLite: Don't require a lease to have expired if we reallocate it to the previous client

The current default allocate_find query causes per-client IP allocation
instability that starts when allocate_clear rate limiting comes into
effect.

With initial pool conditions the default alloc_find query selects from
the pool of all *expired* leases. It selects the least recently used IP
address (i.e. the one with the oldest expiry_time) unless a matching
username and/or callingstationid exists in the table in which case these
are prioritised in order to issue the client with their previous lease.
Normally picking the least recently used address helps to avoid issuing
the address to a different client, maximising the chance of stickiness,
which is desirable.

However, if a user makes successive authentication attempts whilst
allocate_clear rate limiting is active they are always allocated a
different IP address because their existing address is unavailable (has
not yet expired and has not been explicitly expired by allocate_clear),
with the effect that there are now multiple rows in the table containing
the same pool_key, username and callingstationid.

The normal ordering then has the undesirable effect of ensuring that
successive future IP address selections for the client will flip-flop
between addresses because username + callingstationid are first
prioritied then the *oldest expiry_time* is chosen (rather than the most
recent expiry relating to the most recent lease). This behaviour
persists once allocate_clear rate limiting is no longer in effect.

We can avoid getting having multiple rows with the same client details
by amending the allocate_find query to include an existing row matching
nasipaddress and pool_key in the available set of IP addreses regardless
of whether the lease has expired or not (i.e. re-allocation of a current
lease to the same client).

6 years agoOracle: Don't require a lease to have expired if we reallocate it to the previous...
Terry Burton [Fri, 30 Aug 2019 14:58:48 +0000 (15:58 +0100)] 
Oracle: Don't require a lease to have expired if we reallocate it to the previous client

The current default allocate_find query causes per-client IP allocation
instability that starts when allocate_clear rate limiting comes into
effect.

With initial pool conditions the default alloc_find query selects from
the pool of all *expired* leases. It selects the least recently used IP
address (i.e. the one with the oldest expiry_time) unless a matching
username and/or callingstationid exists in the table in which case these
are prioritised in order to issue the client with their previous lease.
Normally picking the least recently used address helps to avoid issuing
the address to a different client, maximising the chance of stickiness,
which is desirable.

However, if a user makes successive authentication attempts whilst
allocate_clear rate limiting is active they are always allocated a
different IP address because their existing address is unavailable (has
not yet expired and has not been explicitly expired by allocate_clear),
with the effect that there are now multiple rows in the table containing
the same pool_key, username and callingstationid.

The normal ordering then has the undesirable effect of ensuring that
successive future IP address selections for the client will flip-flop
between addresses because username + callingstationid are first
prioritied then the *oldest expiry_time* is chosen (rather than the most
recent expiry relating to the most recent lease). This behaviour
persists once allocate_clear rate limiting is no longer in effect.

We can avoid getting having multiple rows with the same client details
by amending the allocate_find query to include an existing row matching
nasipaddress and pool_key in the available set of IP addreses regardless
of whether the lease has expired or not (i.e. re-allocation of a current
lease to the same client).

6 years agoMySQL: Don't require a lease to have expired if we reallocate it to the previous...
Terry Burton [Fri, 30 Aug 2019 14:58:12 +0000 (15:58 +0100)] 
MySQL: Don't require a lease to have expired if we reallocate it to the previous client

The current default allocate_find query causes per-client IP allocation
instability that starts when allocate_clear rate limiting comes into
effect.

With initial pool conditions the default alloc_find query selects from
the pool of all *expired* leases. It selects the least recently used IP
address (i.e. the one with the oldest expiry_time) unless a matching
username and/or callingstationid exists in the table in which case these
are prioritised in order to issue the client with their previous lease.
Normally picking the least recently used address helps to avoid issuing
the address to a different client, maximising the chance of stickiness,
which is desirable.

However, if a user makes successive authentication attempts whilst
allocate_clear rate limiting is active they are always allocated a
different IP address because their existing address is unavailable (has
not yet expired and has not been explicitly expired by allocate_clear),
with the effect that there are now multiple rows in the table containing
the same pool_key, username and callingstationid.

The normal ordering then has the undesirable effect of ensuring that
successive future IP address selections for the client will flip-flop
between addresses because username + callingstationid are first
prioritied then the *oldest expiry_time* is chosen (rather than the most
recent expiry relating to the most recent lease). This behaviour
persists once allocate_clear rate limiting is no longer in effect.

We can avoid getting having multiple rows with the same client details
by amending the allocate_find query to include an existing row matching
nasipaddress and pool_key in the available set of IP addreses regardless
of whether the lease has expired or not (i.e. re-allocation of a current
lease to the same client).

6 years agochild is NULL for master IO handler
Alan T. DeKok [Fri, 30 Aug 2019 15:32:38 +0000 (11:32 -0400)] 
child is NULL for master IO handler

6 years agorename for consistency
Alan T. DeKok [Fri, 30 Aug 2019 15:13:16 +0000 (11:13 -0400)] 
rename for consistency

6 years agoskip NON-SPACE, not skip spaces.
Alan T. DeKok [Fri, 30 Aug 2019 14:59:00 +0000 (10:59 -0400)] 
skip NON-SPACE, not skip spaces.

When making global changes, using "perl -p -i -e s/find/replace/g"
is MUCH safer and MUCH better than using random other tools.

6 years agoset server namespace
Alan T. DeKok [Fri, 30 Aug 2019 14:45:08 +0000 (10:45 -0400)] 
set server namespace

6 years agotypo
Alan T. DeKok [Fri, 30 Aug 2019 12:58:42 +0000 (08:58 -0400)] 
typo

6 years agomove concepts to the concepts directory
Alan T. DeKok [Fri, 30 Aug 2019 12:57:53 +0000 (08:57 -0400)] 
move concepts to the concepts directory

6 years agomove concepts page to concepts directory
Alan T. DeKok [Fri, 30 Aug 2019 12:36:49 +0000 (08:36 -0400)] 
move concepts page to concepts directory

6 years agosmb_ctrl can be NULL
Arran Cudbard-Bell [Fri, 30 Aug 2019 04:54:54 +0000 (00:54 -0400)] 
smb_ctrl can be NULL

6 years agoSplit up mschap challenge processing
Arran Cudbard-Bell [Fri, 30 Aug 2019 01:01:44 +0000 (21:01 -0400)] 
Split up mschap challenge processing

Call central password find function

6 years agoFix crash on failure
Arran Cudbard-Bell [Fri, 30 Aug 2019 00:55:13 +0000 (20:55 -0400)] 
Fix crash on failure

6 years agotypo (#2938)
Jorge Pereira [Thu, 29 Aug 2019 22:42:23 +0000 (19:42 -0300)] 
typo (#2938)

6 years agomore typos
Alan T. DeKok [Thu, 29 Aug 2019 17:27:32 +0000 (13:27 -0400)] 
more typos

6 years agodoc: Add 'update-check.doc' target to update scripts/checks/*.txt db
Jorge Pereira [Thu, 29 Aug 2019 17:12:12 +0000 (14:12 -0300)] 
doc: Add 'update-check.doc' target to update scripts/checks/*.txt db

6 years agomore typos
Alan T. DeKok [Thu, 29 Aug 2019 17:13:03 +0000 (13:13 -0400)] 
more typos

6 years agotypo
Alan T. DeKok [Thu, 29 Aug 2019 17:12:09 +0000 (13:12 -0400)] 
typo

6 years agoremove man pages that no longer exist
Alan T. DeKok [Thu, 29 Aug 2019 17:11:22 +0000 (13:11 -0400)] 
remove man pages that no longer exist

6 years agorlm_lua: Fix 'func_instantiate' and 'func_detach'
Jorge Pereira [Tue, 27 Aug 2019 20:02:06 +0000 (17:02 -0300)] 
rlm_lua: Fix 'func_instantiate' and 'func_detach'

6 years agojust print out each thing as we see it
Alan T. DeKok [Thu, 29 Aug 2019 16:04:04 +0000 (12:04 -0400)] 
just print out each thing as we see it

which makes the output a little harder to read.  But it also
means that the output is organized alphabetically.  And therefore
doesn't change with different hashing methods of the parent shell

6 years agodoc: Add sanity checks to verify if the rlm_$name FR_CONF_ is documented
Jorge Pereira [Fri, 23 Aug 2019 17:47:30 +0000 (14:47 -0300)] 
doc: Add sanity checks to verify if the rlm_$name FR_CONF_ is documented

6 years agoDon't require a lease to have expired if we reallocate it to the previous client
Terry Burton [Wed, 28 Aug 2019 23:33:23 +0000 (00:33 +0100)] 
Don't require a lease to have expired if we reallocate it to the previous client

The current default allocate_find query causes per-client IP allocation
instability that starts when allocate_clear rate limiting comes into effect.

With initial pool conditions the default alloc_find query selects from the pool
of all *expired* leases. It selects the least recently used IP address (i.e.
the one with the oldest expiry_time) unless a matching username and/or
callingstationid exists in the table in which case these are prioritised in
order to issue the client with their previous lease. Normally picking the least
recently used address helps to avoid issuing the address to a different client,
maximising the chance of stickiness, which is desirable.

However, if a user makes successive authentication attempts whilst
allocate_clear rate limiting is active they are always allocated a different IP
address because their existing address is unavailable (has not yet expired and
has not been explicitly expired by allocate_clear), with the effect that there
are now multiple rows in the table containing the same pool_key, username and
callingstationid.

The normal ordering then has the undesirable effect of ensuring that successive
future IP address selections for the client will flip-flop between addresses
because username + callingstationid are first prioritied then the *oldest
expiry_time* is chosen (rather than the most recent expiry relating to the most
recent lease). This behaviour persists once allocate_clear rate limiting is no
longer in effect.

We can avoid getting having multiple rows with the same client details by
amending the allocate_find query to include an existing row matching
nasipaddress and pool_key in the available set of IP addreses regardless of
whether the lease has expired or not (i.e. re-allocation of a current lease to
the same client).

6 years agorlm_chap: Add documentation for 'normalise' (#2934)
Jorge Pereira [Thu, 29 Aug 2019 13:56:01 +0000 (10:56 -0300)] 
rlm_chap: Add documentation for 'normalise' (#2934)

6 years agoMinor behaviour changes in password.c
Arran Cudbard-Bell [Thu, 29 Aug 2019 13:50:27 +0000 (09:50 -0400)] 
Minor behaviour changes in password.c

- Always process Password-With-Header
- Don't require the use of a temporary ctx, and explicitly signal if attributes should be freed after use

6 years agoupdate and clarify
Alan T. DeKok [Thu, 29 Aug 2019 13:17:05 +0000 (09:17 -0400)] 
update and clarify

6 years agouse NUM_ELEMENTS() everywhere
Alan T. DeKok [Thu, 29 Aug 2019 13:02:14 +0000 (09:02 -0400)] 
use NUM_ELEMENTS() everywhere

perl -p -i -e 's,sizeof\(([^)]+)\)\s+/\s+sizeof\([^\[)]+\[0\]\),NUM_ELEMENTS($1),;s,sizeof\(([^)]+)\)\s+/\s+sizeof\(\*[^\[)]+\),NUM_ELEMENTS($1),' $(find src -name "*.c" -print)

Hmm... Perl...

6 years agoword smithing and cleanup
Alan T. DeKok [Thu, 29 Aug 2019 01:23:39 +0000 (21:23 -0400)] 
word smithing and cleanup

6 years agoStupid picky compiler
Arran Cudbard-Bell [Thu, 29 Aug 2019 02:34:57 +0000 (22:34 -0400)] 
Stupid picky compiler

6 years agoSSHA1 available without OpenSSL
Arran Cudbard-Bell [Thu, 29 Aug 2019 02:27:58 +0000 (22:27 -0400)] 
SSHA1 available without OpenSSL

6 years agoInstance is now used in rlm_chap
Arran Cudbard-Bell [Thu, 29 Aug 2019 02:00:34 +0000 (22:00 -0400)] 
Instance is now used in rlm_chap

6 years agoVarious fixes in password.c, rlm_pap and rlm_chap
Arran Cudbard-Bell [Thu, 29 Aug 2019 01:37:08 +0000 (21:37 -0400)] 
Various fixes in password.c, rlm_pap and rlm_chap

- Move password attributes under Password-Root
- Apply tighter bounds checks on hash length in password.c
- Failover between "known good" password types in password.c if one type can't be normalised or is the wrong length.
- Merge password info arrays into one table in password.c
- Provide two public functions in password.c, one provides a cannonical version of a password attribute, the other rewrites all the password attributes in the request->control list to their canonical form.
- s/(S?)SHA-Password/\1SHA1-Password/
- Support multiple levels of preprocessing callbacks
- Support restricting password types password.c can return
- Use Password-Root TLV to be more efficient about locating candidate "known good" passwords (should be MUCH faster, and no longer quadratic).
- Use proper hash length macros in the hash info table in password.c
- Split SHA2-Password and SHA3-Password values into SHA[23]-(224|256|348|512)-Password attributes automatically.
- Provide macro wrappers to allow us to easily add additional EVP based hashing mechanisms.
- Fix pap_auth_func signature so known_good is also constified.
- Prevent normalisation of Cleartext-Password, that's probably always the wrong thing to do.

6 years agoDon't print too much of the salted hash string
Arran Cudbard-Bell [Thu, 29 Aug 2019 01:35:43 +0000 (21:35 -0400)] 
Don't print too much of the salted hash string

6 years agoRemove normalisation call from proto_radius_auth.c
Arran Cudbard-Bell [Thu, 29 Aug 2019 01:34:57 +0000 (21:34 -0400)] 
Remove normalisation call from proto_radius_auth.c

As discussed. It's bad to mix internal attribute processing with protocols.

The normalisation could be applied equally well to many protocols, and rlm_pap and rlm_chap will do their own normalisation without mangling the existing attributes in the request.

6 years agoFix Auth-Type checks in rlm_pap and rlm_chap
Arran Cudbard-Bell [Thu, 29 Aug 2019 01:33:17 +0000 (21:33 -0400)] 
Fix Auth-Type checks in rlm_pap and rlm_chap

They were looking in the wrong list, and the output should not have been an error

6 years agoPAP no longer checks for input password hashes, so we need to work around that in...
Arran Cudbard-Bell [Thu, 29 Aug 2019 01:32:17 +0000 (21:32 -0400)] 
PAP no longer checks for input password hashes, so we need to work around that in tests that remove &control:Cleartext-Password

6 years agoPassword should be const in fr_radius_encode_chap_password
Arran Cudbard-Bell [Thu, 29 Aug 2019 01:31:19 +0000 (21:31 -0400)] 
Password should be const in fr_radius_encode_chap_password

6 years agoProvide length of the match in prefix search functions
Arran Cudbard-Bell [Wed, 28 Aug 2019 23:15:10 +0000 (19:15 -0400)] 
Provide length of the match in prefix search functions

6 years agomore compiler fixes
Alan T. DeKok [Wed, 28 Aug 2019 22:05:38 +0000 (18:05 -0400)] 
more compiler fixes

6 years agopbkdf2 isn't always built
Alan T. DeKok [Wed, 28 Aug 2019 20:55:02 +0000 (16:55 -0400)] 
pbkdf2 isn't always built

6 years agocleanups and use common includes
Alan T. DeKok [Wed, 28 Aug 2019 18:42:05 +0000 (14:42 -0400)] 
cleanups and use common includes

6 years agoUpdate 'check.doc' target to save the input as parameter
Jorge Pereira [Wed, 28 Aug 2019 17:13:27 +0000 (14:13 -0300)] 
Update 'check.doc' target to save the input as parameter

The list of expected missing xlat's calls should be versioned
in scripts/checks/missing-xlat-doc.txt

6 years agomove to table lookups instead of if / then / else
Alan T. DeKok [Wed, 28 Aug 2019 14:55:02 +0000 (10:55 -0400)] 
move to table lookups instead of if / then / else

6 years agoshut up compiler
Alan T. DeKok [Wed, 28 Aug 2019 14:53:56 +0000 (10:53 -0400)] 
shut up compiler

6 years agouse known array size instead of anything else
Alan T. DeKok [Wed, 28 Aug 2019 14:42:33 +0000 (10:42 -0400)] 
use known array size instead of anything else

6 years agouse pointers in table, instead of ints & a switch statement
Alan T. DeKok [Wed, 28 Aug 2019 14:37:38 +0000 (10:37 -0400)] 
use pointers in table, instead of ints & a switch statement

6 years agoAdd missing config options in raddb/
Jorge Pereira [Tue, 27 Aug 2019 23:12:49 +0000 (20:12 -0300)] 
Add missing config options in raddb/

It helps #2919 involving the modules:

rlm_cipher
rlm_eap
rlm_ldap
rlm_lua
rlm_mschap
rlm_passwd
rlm_radius
rlm_redis_ippool

6 years agocall password_normalise()
Alan T. DeKok [Wed, 28 Aug 2019 14:18:13 +0000 (10:18 -0400)] 
call password_normalise()

so that we don't do all that work ourselves.

6 years agoload simple things first
Alan T. DeKok [Wed, 28 Aug 2019 14:11:49 +0000 (10:11 -0400)] 
load simple things first

We can later add checks that new dictionary entries are NOT
added after some point.  Otherwise the server fails with
"unknown attribute" error, instead of "attribute definition
is too late"

6 years agonew attributes MUST be define in the "bootstrap" phase
Alan T. DeKok [Wed, 28 Aug 2019 14:11:09 +0000 (10:11 -0400)] 
new attributes MUST be define in the "bootstrap" phase

6 years agouse consistent names
Alan T. DeKok [Wed, 28 Aug 2019 14:01:43 +0000 (10:01 -0400)] 
use consistent names

so `git grep` finds things

6 years agocall password_normalise()
Alan T. DeKok [Wed, 28 Aug 2019 13:54:49 +0000 (09:54 -0400)] 
call password_normalise()

which then means we don't need to loop over the attributes ourselves

6 years agocall password_normalise(), just in case
Alan T. DeKok [Wed, 28 Aug 2019 13:50:55 +0000 (09:50 -0400)] 
call password_normalise(), just in case

6 years agocall password_normalise() instead of doing it ourselves
Alan T. DeKok [Wed, 28 Aug 2019 13:50:44 +0000 (09:50 -0400)] 
call password_normalise() instead of doing it ourselves

6 years agoadd server_init() and server_free()
Alan T. DeKok [Wed, 28 Aug 2019 13:49:38 +0000 (09:49 -0400)] 
add server_init() and server_free()

so that src/lib/server/ can be initialized all at once.

And the callers then don't need to have a list of init/free
functions

6 years agoadd password_normalise() which normalises all passwords
Alan T. DeKok [Wed, 28 Aug 2019 13:01:11 +0000 (09:01 -0400)] 
add password_normalise() which normalises all passwords

6 years agoAdd missing config options in raddb/
Jorge Pereira [Fri, 23 Aug 2019 20:44:16 +0000 (17:44 -0300)] 
Add missing config options in raddb/

It helps #2919 involving the modules:

rlm_attr_filter
rlm_cache
rlm_rest
rlm_sometimes

6 years agoLet the PAP module normalize passwords
Alan T. DeKok [Tue, 27 Aug 2019 18:36:18 +0000 (14:36 -0400)] 
Let the PAP module normalize passwords

No, we do NOT want it to fail if there's no User-Password
in the request.  Instead, we want it to do stuff

6 years agoremove warning which is now in proto_radius_auth
Alan T. DeKok [Tue, 27 Aug 2019 18:27:55 +0000 (14:27 -0400)] 
remove warning which is now in proto_radius_auth

6 years agowe don't need User-Password here.
Alan T. DeKok [Tue, 27 Aug 2019 18:27:25 +0000 (14:27 -0400)] 
we don't need User-Password here.

6 years ago rlm_lua: Remove unused options (#2929)
Jorge Pereira [Tue, 27 Aug 2019 19:03:49 +0000 (16:03 -0300)] 
 rlm_lua: Remove unused options (#2929)

* rlm_lua: Remove unused options

* rlm_lua: The correct should be 'fr.requests'

6 years agoadded documentation for the CHAP module
Alan T. DeKok [Tue, 27 Aug 2019 17:52:42 +0000 (13:52 -0400)] 
added documentation for the CHAP module

6 years agotypo
Alan T. DeKok [Tue, 27 Aug 2019 17:52:38 +0000 (13:52 -0400)] 
typo

6 years agodon't be retarded. Use a percentage.
Alan T. DeKok [Tue, 27 Aug 2019 17:39:35 +0000 (13:39 -0400)] 
don't be retarded.  Use a percentage.

Who was the idiot who wrote that code?

6 years agoCopy "normalise password" code from rlm_pap to proto_radius_auth
Alan T. DeKok [Tue, 27 Aug 2019 16:57:39 +0000 (12:57 -0400)] 
Copy "normalise password" code from rlm_pap to proto_radius_auth

Instead of having this code in multiple modules, just have it
once in proto_radius_auth.  That way it runs just before the
"authenticate" section.

And, it ALWAYS runs.  If people delete the "pap" module from
"recv Access-Request", then everything still works.

6 years agodon't normalize passwords
Alan T. DeKok [Tue, 27 Aug 2019 17:09:50 +0000 (13:09 -0400)] 
don't normalize passwords

it should be done elsewhere

6 years agorlm_lua: Clean up (#2926)
Jorge Pereira [Tue, 27 Aug 2019 17:25:37 +0000 (14:25 -0300)] 
rlm_lua: Clean up (#2926)

* rlm_lua: Clean up

* rlm_lua: Clean up related to 9bc7d44921

6 years agorlm_rest: Clean up (#2928)
Jorge Pereira [Tue, 27 Aug 2019 17:25:07 +0000 (14:25 -0300)] 
rlm_rest: Clean up (#2928)

6 years agoun-break CHAP module
Alan T. DeKok [Tue, 27 Aug 2019 15:38:34 +0000 (11:38 -0400)] 
un-break CHAP module

If there's no "known good" password, we still set Auth-Type = CHAP,
because that's the only thing which cam be done.  We issue a
warning, but we hope that a subsequent module will do the right thing

6 years agotypos
Alan T. DeKok [Tue, 27 Aug 2019 15:28:33 +0000 (11:28 -0400)] 
typos

6 years agoadd more documentation
Alan T. DeKok [Tue, 27 Aug 2019 14:49:00 +0000 (10:49 -0400)] 
add more documentation

6 years agoIt helps to print out "Ready to process requests"
Alan T. DeKok [Tue, 27 Aug 2019 14:29:38 +0000 (10:29 -0400)] 
It helps to print out "Ready to process requests"

6 years agomore cleanups and rearrangement
Alan T. DeKok [Tue, 27 Aug 2019 13:55:52 +0000 (09:55 -0400)] 
more cleanups and rearrangement

6 years agomore cleanups and split authentication into its own page
Alan T. DeKok [Tue, 27 Aug 2019 13:26:30 +0000 (09:26 -0400)] 
more cleanups and split authentication into its own page

6 years agocleanups and typos
Alan T. DeKok [Tue, 27 Aug 2019 13:26:21 +0000 (09:26 -0400)] 
cleanups and typos

6 years agoUse cf_table_parse_ctx_t structure instead of passing in the table directly Closes...
Arran Cudbard-Bell [Tue, 27 Aug 2019 05:14:20 +0000 (01:14 -0400)] 
Use cf_table_parse_ctx_t structure instead of passing in the table directly Closes #2925

6 years agoNo enum name needed
Arran Cudbard-Bell [Mon, 26 Aug 2019 22:18:25 +0000 (18:18 -0400)] 
No enum name needed

6 years agoradsqlrelay systemd watchdog (#2922)
Terry Burton [Tue, 27 Aug 2019 05:09:00 +0000 (06:09 +0100)] 
radsqlrelay systemd watchdog (#2922)

* radsqlrelay: Clean up strict and warnings pragmas

The modules we use are clean so ensure that these pragmas apply to
includes.

* radsqlrelay: Add support for systemd watchdogs

systemd can terminate (and restart) the service if it stops providing
watchdogs for a defined interval.

* radsqlrelay: Don't get stuck processing the same broken SQL statements

If the file contains a broken SQL statement then it is continually
retried with a 1 sec delay.

Restarting the radsqlrelay will replay the entire file (which could get
stuck even earlier due to duplicate key fields).

We instead continue when we encounter a failing statement unless the
failure was the result of a database disconnect in which case it is
resumed once the connection is available.

6 years agodoc: typos and small fixes
Matthew Newton [Mon, 26 Aug 2019 23:53:50 +0000 (00:53 +0100)] 
doc: typos and small fixes

6 years agodoc: install & upgrade on the intro page
Matthew Newton [Mon, 26 Aug 2019 23:30:07 +0000 (00:30 +0100)] 
doc: install & upgrade on the intro page

6 years agocherry pick text from #2921
Matthew Newton [Mon, 26 Aug 2019 23:24:21 +0000 (00:24 +0100)] 
cherry pick text from #2921

6 years agodoc: move 'upgrading' to 'install & upgrade' section
Matthew Newton [Mon, 26 Aug 2019 21:12:18 +0000 (22:12 +0100)] 
doc: move 'upgrading' to 'install & upgrade' section

6 years agodoc: start splitting up install document
Matthew Newton [Mon, 26 Aug 2019 21:17:20 +0000 (22:17 +0100)] 
doc: start splitting up install document

6 years agodoc: update dependencies page
Matthew Newton [Mon, 26 Aug 2019 21:15:48 +0000 (22:15 +0100)] 
doc: update dependencies page

6 years agodoc: move build dependencies to installation section
Matthew Newton [Mon, 26 Aug 2019 19:00:24 +0000 (20:00 +0100)] 
doc: move build dependencies to installation section

6 years agodoc: move installation to new 'install & upgrade' section
Matthew Newton [Mon, 26 Aug 2019 18:47:11 +0000 (19:47 +0100)] 
doc: move installation to new 'install & upgrade' section

6 years agoMove stupid perl hack to where it should be
Arran Cudbard-Bell [Mon, 26 Aug 2019 21:28:04 +0000 (17:28 -0400)] 
Move stupid perl hack to where it should be

6 years agoNot you...
Arran Cudbard-Bell [Mon, 26 Aug 2019 21:21:34 +0000 (17:21 -0400)] 
Not you...

6 years agoAdd back source files that should not have been removed
Arran Cudbard-Bell [Mon, 26 Aug 2019 21:20:49 +0000 (17:20 -0400)] 
Add back source files that should not have been removed

This reverts commit 4e6df7bd9827452339bd3e8f7f219f49715536f2.

6 years agorearrange, reformat, and do word smithing
Alan T. DeKok [Mon, 26 Aug 2019 18:32:49 +0000 (14:32 -0400)] 
rearrange, reformat, and do word smithing

many small pages is better than few large pages

6 years agothese files should not have been committed
Alan T. DeKok [Mon, 26 Aug 2019 18:09:24 +0000 (14:09 -0400)] 
these files should not have been committed

6 years agoI went up the mountain, and wrote the wisdom I received
Alexander Clouter [Sat, 24 Aug 2019 15:01:57 +0000 (16:01 +0100)] 
I went up the mountain, and wrote the wisdom I received

6 years agoimprove "how to build docs"
Alexander Clouter [Sat, 24 Aug 2019 19:26:46 +0000 (20:26 +0100)] 
improve "how to build docs"

6 years agofix ldap config example
Alexander Clouter [Sun, 25 Aug 2019 16:18:22 +0000 (17:18 +0100)] 
fix ldap config example

6 years ago{cleartext} is not interpreted by OpenLDAP
Alexander Clouter [Sun, 25 Aug 2019 18:19:40 +0000 (19:19 +0100)] 
{cleartext} is not interpreted by OpenLDAP