diff options
author | Linus Nordberg <linus@nordberg.se> | 2013-02-11 16:41:47 +0100 |
---|---|---|
committer | Linus Nordberg <linus@nordberg.se> | 2013-02-11 16:41:47 +0100 |
commit | d640207c74e0aaf5b4a3faf61c38e17796bf76a2 (patch) | |
tree | d79a0eabf66503525f4bf1a3495e00ed50f7d207 /lib/include/radsec | |
parent | 8d113bba795b1b8cf4ab55b362108f2c819e039d (diff) |
Add support for configuring client connections too.
We're moving x509 and psk config from rs_realm to rs_peer while
allowing these to be configured on the realm level and overriden at
peer level.
Also, add support for printing the read configuration, for debugging.
Diffstat (limited to 'lib/include/radsec')
-rw-r--r-- | lib/include/radsec/radsec-impl.h | 17 | ||||
-rw-r--r-- | lib/include/radsec/radsec.h | 3 |
2 files changed, 14 insertions, 6 deletions
diff --git a/lib/include/radsec/radsec-impl.h b/lib/include/radsec/radsec-impl.h index 9f8ebbb..ef01d70 100644 --- a/lib/include/radsec/radsec-impl.h +++ b/lib/include/radsec/radsec-impl.h @@ -40,7 +40,6 @@ struct rs_credentials { char *identity; char *secret; enum rs_key_encoding secret_encoding; - unsigned int secret_len; }; struct rs_error { @@ -48,14 +47,25 @@ struct rs_error { char buf[1024]; }; +enum rs_peer_type { + RS_PEER_TYPE_CLIENT = 1, + RS_PEER_TYPE_SERVER = 2 +}; + /** Configuration object for a connection. */ struct rs_peer { + enum rs_peer_type type; struct rs_connection *conn; struct rs_realm *realm; char *hostname; char *service; char *secret; /* RADIUS secret. */ struct evutil_addrinfo *addr_cache; + char *cacertfile; + char *cacertpath; + char *certfile; + char *certkeyfile; + struct rs_credentials *transport_cred; struct rs_peer *next; }; @@ -65,11 +75,6 @@ struct rs_realm { enum rs_conn_type type; int timeout; int retries; - char *cacertfile; - char *cacertpath; - char *certfile; - char *certkeyfile; - struct rs_credentials *transport_cred; struct rs_peer *peers; struct rs_realm *next; }; diff --git a/lib/include/radsec/radsec.h b/lib/include/radsec/radsec.h index ee8c6a8..0a43f6f 100644 --- a/lib/include/radsec/radsec.h +++ b/lib/include/radsec/radsec.h @@ -208,6 +208,9 @@ int rs_context_set_alloc_scheme(struct rs_context *ctx, accessed using \a rs_err_ctx_pop. */ int rs_context_read_config(struct rs_context *ctx, const char *config_file); +int rs_context_print_config (struct rs_context *ctx, char **buf_out); + + /****************/ /* Connection. */ /****************/ |