summaryrefslogtreecommitdiff
path: root/server/acl_files.c
Commit message (Collapse)AuthorAge
* The logging is too chatty and the control flow is too incomprehensibleGravatar Karl Ramm2013-10-27
|
* rearrange the function so as to have the logging workGravatar Karl Ramm2013-10-26
|
* Use the right variable for the log message.Gravatar Karl Ramm2013-10-26
| | | | I need to learn to be more careful when throwing around the word "properly".
* handle unauth checks _properly_Gravatar Karl Ramm2013-10-26
|
* Unauth'd messages, ODDLY, do not have a sender for the acl libraryGravatar Karl Ramm2013-10-25
|
* acl_files: always return a value from add_hostGravatar Jeffrey Hutzelman2013-03-18
| | | | If it's going to return a value, it needs to always return a value.
* remove some now-unused variablesGravatar Karl Ramm2013-03-16
|
* rototill the low-level acl codeGravatar Karl Ramm2013-03-03
| | | | Now supports krb5 pricipals sanely.
* Clean up warningsGravatar Jeffrey Hutzelman2013-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminate compiler warnings due to various issues (listed below). This allows Zephyr to build cleanly under GCC versions ranging from 4.1.0 to 4.7.2 with all of the options shown below: -g -O2 -Wall -Werror -Wno-deprecated-declarations -Wmissing-declarations -Wpointer-arith -Wstrict-prototypes -Wshadow -Wextra -Wno-missing-field-initializers -Wno-unused-parameter and, on recent versions, -Wunreachable-code Test builds were done - On Ubuntu 12.10 (Quantal Quetzal) using both MIT Kerberos 1.10.1 and Heimdal 1.6, without krb4 and both with and without C-Ares and Hesiod - On Fedora 14 using Heimdal 0.6, without C-Ares or Hesiod and both with and without krb4 (KTH Kerberos 1.3rc2) - On Fedora Core 3, Fedora Core 5, Fedora 7, and Fedora 10, using Heimdal 0.6 and without C-Ares, Hesiod, or krb4 It also allows clean builds on Solaris 10 under the Sun Studio 12 (9/07) C compiler with the following options: -g -fd -v -errfmt -errhdr=%user -errtags=yes -errwarn=%all -erroff=E_OLD_STYLE_FUNC_DECL,E_ENUM_TYPE_MISMATCH_ARG,E_ARG_INCOMPATIBLE_WITH_ARG ... and under Solaris 9 with the Sun Forte 7 (3/02) C compiler with the above options and -erroff=E_FUNC_HAS_NO_RETURN_STMT. Solaris builds were done with Heimdal 0.6 and without C-Ares, Hesiod, or krb4. The following types of issues are addressed in this change: - Parameters and local variables with the same names as library functions - Parameters and local variables with the same names as globals - Declarations for exported global variables missing from headers - Prototypes for exported functions missing from headers - Missing 'static' on functions that shouldn't be exported - Old-style function declarations - Duplicate declarations - Type mismatches - Unused variables and functions - Uninitialized variables - Forward references to enums - Necessary header files not included - Violations of the aliasing rules, where GCC was able to detect them - Missing braces on if blocks that might be empty - Attempts to do pointer arithmetic on pointers of type void *, which is not permitted in standard C. - An attempt to pass a function pointer via a void * parameter, which is not permitted in standard C. Instead, we now pass a pointer to a structure, which then contains the required function pointer. - Unnecessary inclusion of <krb5_err.h>, which is already included by <krb5.h> when the former exists, and might not be protected against double inclusion, depending on which com_err was used. - Missing include of <com_err.h>, which was masked by the fact that it is included by headers generated by e2fsprogs compile_et - Use of com_err() with a non-constant value in place of the format string, which in every case was a fixed-size buffer in which a message was built using sprintf(!). Both the calls to sprintf and the fixed-size buffers have been removed, in favor of just letting com_err() do the formatting. - Various cases where X library functions expecting a parameter of type wchar_t * were instead passed a parameter of type XChar2b *. The two types look similar, but are not the same and are _not_ interchangeable. - An overly-simplistic configure test which failed to detect existence of <term.h> on Solaris, due to not including <curses.h>. - Using the wrong type for the flags output of krb5_auth_con_getflags() when building against Heimdal. A configure test is added to detect the correct type.
* Add IP-address and negative ACL entriesGravatar Jeffrey Hutzelman2013-01-19
| | | | | | | | | | | | | | | | | | | | | This allows ACLs to grant access based on the IP address of a client instead of its principal name. This is done using ACL entries with the syntax "@a.b.c.d". Currently, only IPv4 addresses are supported. A single entry may match all hosts on a particular subnet by using CIDR notation, written as @a.b.c.d/nn. If no length is given, 32 is assumed. Host and principal entries can be freely mixed within the same ACL; the ACL matches if any entry matches the client. Note that this means that ACLs can now match unauthenticated clients (however, this does not lift the general constraint that only authenticated clients can subscribe at all). Additionally, support for negative ACL entries is added. These entries are indicated by a leading '!', which may be applied to both principal and host entries. Negative entries are applied in the style of AFS ACLs; that is, a matching negative entry overrides any positive entry and thus guarantees that matching clients will be denied access. (edited slightly for style by kcr@1TS.ORG)
* Temporary kludge to make this not fall over without krb4. needs revisiting.Gravatar Karl Ramm2008-12-21
|
* actually prune out the rest of the partial notdef'd acl writing codeGravatar Karl Ramm2008-01-21
|
* actually prune out partial notdef'd acl writing codeGravatar Karl Ramm2008-01-21
|
* prune out partial notdef'd acl writing codeGravatar Karl Ramm2008-01-21
|
* collapse state of a bunch of #if 0 and #if 1 debugging outputGravatar Karl Ramm2008-01-21
|
* de K&RifyGravatar Karl Ramm2008-01-21
|
* Some RCS ID cleanup: delete $Log$ and replace other RCS keywords with $Id$.Gravatar Greg Hudson1999-01-22
|
* ZEPHYR_USES_KERBEROS -> HAVE_KRB4; ZEPHYR_USES_HESIOD -> HAVE_HESIODGravatar Greg Hudson1997-10-25
|
* Pull in sources from zephyr locker. See /mit/zephyr/repository forGravatar Greg Hudson1997-09-14
| | | | detailed change information.
* This file was deleted in the 8.0 source treeGravatar Greg Hudson1996-08-27
|
* Changed index() to strchr() [ANSI]Gravatar Richard Basch1993-09-24
|
* *** empty log message ***Gravatar Lucien Van Elsen1992-08-14
|
* Converted back to ANSI C (with ifdef's for standard C)Gravatar Lucien Van Elsen1991-12-04
|
* Initial revisionGravatar Kenneth G Raeburn1990-11-13