#endif
int
-rs_context_read_config(struct rs_handle *ctx, const char *config_file)
+rs_context_read_config(struct rs_context *ctx, const char *config_file)
{
#warning "Missing some error handling in rs_context_config_read()"
cfg_opt_t server_opts[] =
}
struct rs_realm
-*rs_conf_find_realm(struct rs_handle *ctx, const char *name)
+*rs_conf_find_realm(struct rs_context *ctx, const char *name)
{
struct rs_realm *r;
}
static int
-_ctx_err_vpush_fl (struct rs_handle *ctx, int code, const char *file, int line, const char *fmt, va_list args)
+_ctx_err_vpush_fl (struct rs_context *ctx, int code, const char *file,
+ int line, const char *fmt, va_list args)
{
struct rs_error *err = _err_vcreate (code, file, line, fmt, args);
}
int
-rs_err_ctx_push (struct rs_handle *ctx, int code, const char *fmt, ...)
+rs_err_ctx_push (struct rs_context *ctx, int code, const char *fmt, ...)
{
va_list args;
va_start (args, fmt);
}
int
-rs_err_ctx_push_fl (struct rs_handle *ctx, int code, const char *file, int line, const char *fmt, ...)
+rs_err_ctx_push_fl (struct rs_context *ctx, int code, const char *file,
+ int line, const char *fmt, ...)
{
va_list args;
va_start (args, fmt);
}
static int
-_conn_err_vpush_fl (struct rs_connection *conn, int code, const char *file, int line, const char *fmt, va_list args)
+_conn_err_vpush_fl (struct rs_connection *conn, int code, const char *file,
+ int line, const char *fmt, va_list args)
{
struct rs_error *err = _err_vcreate (code, file, line, fmt, args);
}
int
-rs_err_conn_push_fl (struct rs_connection *conn, int code, const char *file, int line, const char *fmt, ...)
+rs_err_conn_push_fl (struct rs_connection *conn, int code, const char *file,
+ int line, const char *fmt, ...)
{
va_list args;
va_start (args, fmt);
}
struct rs_error *
-rs_err_ctx_pop (struct rs_handle *ctx)
+rs_err_ctx_pop (struct rs_context *ctx)
{
struct rs_error *err;
struct rs_error *
blocking_client (const char *av1, const char *av2)
{
- struct rs_handle *h;
+ struct rs_context *h;
struct rs_connection *conn;
struct rs_packet *req, *resp;
RADIUS_PACKET *fr_pkt;
struct rs_peer {
struct rs_connection *conn;
struct evutil_addrinfo *addr;
- int fd; /* Socket. */
- char is_connecting; /* FIXME: replace with a single state member */
- char is_connected; /* FIXME: replace with a single state member */
+ int fd; /* Socket. */
+ char is_connecting; /* FIXME: replace with a single state member */
+ char is_connected; /* FIXME: replace with a single state member */
char *secret;
int timeout; /* client only */
int tries; /* client only */
struct rs_realm *next;
};
-struct rs_handle {
+struct rs_context {
struct rs_realm *realms;
struct rs_alloc_scheme alloc_scheme;
struct rs_error *err;
};
struct rs_connection {
- struct rs_handle *ctx;
+ struct rs_context *ctx;
struct event_base *evb;
struct bufferevent *bev;
enum rs_conn_type type;
};
/* Nonpublic functions. */
-struct rs_error *_rs_resolv (struct evutil_addrinfo **addr, rs_conn_type_t type, const char *hostname, const char *service);
-struct rs_peer *_rs_peer_create (struct rs_handle *ctx, struct rs_peer **rootp);
-struct rs_error *_rs_err_create (unsigned int code, const char *file, int line, const char *fmt, ...);
-int _rs_err_conn_push_err (struct rs_connection *conn, struct rs_error *err);
+struct rs_error *_rs_resolv(struct evutil_addrinfo **addr,
+ rs_conn_type_t type, const char *hostname,
+ const char *service);
+struct rs_peer *_rs_peer_create(struct rs_context *ctx,
+ struct rs_peer **rootp);
+struct rs_error *_rs_err_create(unsigned int code, const char *file,
+ int line, const char *fmt, ...);
+int _rs_err_conn_push_err(struct rs_connection *conn,
+ struct rs_error *err);
/* Convenience macros. */
/* Data types. */
-struct rs_handle; /* radsec-impl.h */
+struct rs_context; /* radsec-impl.h */
struct rs_connection; /* radsec-impl.h */
struct rs_packet; /* radsec-impl.h */
struct rs_conn; /* radsec-impl.h */
/* Function prototypes. */
/* Context. */
-int rs_context_create(struct rs_handle **ctx, const char *dict);
-void rs_context_destroy(struct rs_handle *ctx);
-int rs_context_set_alloc_scheme(struct rs_handle *ctx,
+int rs_context_create(struct rs_context **ctx, const char *dict);
+void rs_context_destroy(struct rs_context *ctx);
+int rs_context_set_alloc_scheme(struct rs_context *ctx,
struct rs_alloc_scheme *scheme);
-int rs_context_read_config(struct rs_handle *ctx, const char *config_file);
+int rs_context_read_config(struct rs_context *ctx,
+ const char *config_file);
/* Connection. */
-int rs_conn_create(struct rs_handle *ctx, struct rs_connection **conn,
+int rs_conn_create(struct rs_context *ctx, struct rs_connection **conn,
const char *config);
void rs_conn_set_type(struct rs_connection *conn, rs_conn_type_t type);
int rs_conn_add_listener(struct rs_connection *conn, rs_conn_type_t type,
void rs_attr_destroy(struct rs_attr *attr);
/* Config. */
-struct rs_realm *rs_conf_find_realm(struct rs_handle *ctx,
+struct rs_realm *rs_conf_find_realm(struct rs_context *ctx,
const char *name);
/* Error. */
-int rs_err_ctx_push(struct rs_handle *ctx, int code, const char *fmt, ...);
-int rs_err_ctx_push_fl(struct rs_handle *ctx, int code, const char *file,
+int rs_err_ctx_push(struct rs_context *ctx, int code, const char *fmt,
+ ...);
+int rs_err_ctx_push_fl(struct rs_context *ctx, int code, const char *file,
int line, const char *fmt, ...);
-struct rs_error *rs_err_ctx_pop(struct rs_handle *ctx);
+struct rs_error *rs_err_ctx_pop(struct rs_context *ctx);
int rs_err_conn_push(struct rs_connection *conn, int code, const char *fmt,
...);
int rs_err_conn_push_fl(struct rs_connection *conn, int code,
#include <radsec/radsec-impl.h>
int
-rs_context_create(struct rs_handle **ctx, const char *dict)
+rs_context_create(struct rs_context **ctx, const char *dict)
{
- struct rs_handle *h;
+ struct rs_context *h;
if (ctx)
*ctx = NULL;
- h = (struct rs_handle *) malloc (sizeof(struct rs_handle));
+ h = (struct rs_context *) malloc (sizeof(struct rs_context));
if (h)
{
char *buf1 = NULL, *buf2 = NULL;
fr_debug_flag = 1;
#endif
- memset (h, 0, sizeof(struct rs_handle));
+ memset (h, 0, sizeof(struct rs_context));
fr_randinit (&h->fr_randctx, 0);
fr_rand_seed (NULL, 0);
return h ? RSE_OK : RSE_NOMEM;
}
-void rs_context_destroy(struct rs_handle *ctx)
+void rs_context_destroy(struct rs_context *ctx)
{
free (ctx);
}
-int rs_context_set_alloc_scheme(struct rs_handle *ctx, struct rs_alloc_scheme *scheme)
+int rs_context_set_alloc_scheme(struct rs_context *ctx,
+ struct rs_alloc_scheme *scheme)
{
return rs_err_ctx_push_fl (ctx, RSE_NOSYS, __FILE__, __LINE__,
"%s: NYI", __func__);
}
int
-rs_conn_create(struct rs_handle *ctx, struct rs_connection **conn,
+rs_conn_create(struct rs_context *ctx, struct rs_connection **conn,
const char *config)
{
struct rs_connection *c;
}
struct rs_peer *
-_rs_peer_create (struct rs_handle *ctx, struct rs_peer **rootp)
+_rs_peer_create (struct rs_context *ctx, struct rs_peer **rootp)
{
struct rs_peer *p;
event_base_free (conn->evb);
}
-int rs_conn_set_eventbase(struct rs_connection *conn, struct event_base *eb)
+int
+rs_conn_set_eventbase(struct rs_connection *conn, struct event_base *eb)
{
return rs_err_conn_push_fl (conn, RSE_NOSYS, __FILE__, __LINE__,
"%s: NYI", __func__);
}
-int rs_conn_set_callbacks(struct rs_connection *conn, struct rs_conn_callbacks *cb)
+int
+rs_conn_set_callbacks(struct rs_connection *conn, struct rs_conn_callbacks *cb)
{
return rs_err_conn_push_fl (conn, RSE_NOSYS, __FILE__, __LINE__,
"%s: NYI", __func__);
}
-int rs_conn_get_current_server(struct rs_connection *conn, const char *name, size_t buflen)
+int
+rs_conn_get_current_server(struct rs_connection *conn, const char *name,
+ size_t buflen)
{
return rs_err_conn_push_fl (conn, RSE_NOSYS, __FILE__, __LINE__,
"%s: NYI", __func__);
}
-