summaryrefslogtreecommitdiffstats
path: root/plugin/eurephia.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/eurephia.c')
-rw-r--r--plugin/eurephia.c34
1 files changed, 11 insertions, 23 deletions
diff --git a/plugin/eurephia.c b/plugin/eurephia.c
index c419c78..fadce39 100644
--- a/plugin/eurephia.c
+++ b/plugin/eurephia.c
@@ -1,7 +1,7 @@
/* eurephia.c -- Main functions for the eurephia authentication module
*
- * GPLv2 only - Copyright (C) 2008 - 2013
- * David Sommerseth <dazo@users.sourceforge.net>
+ * GPLv2 only - Copyright (C) 2008 - 2015
+ * David Sommerseth <dazo@eurephia.org>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -155,7 +155,7 @@ eurephiaCTX *eurephiaInit(const char const **argv, const char const **envp,
eurephia_log_init(ctx, "eurephia-auth", logfile, loglvl, NULL);
}
eurephia_log(ctx, LOG_INFO, 0, "Initialising eurephia v" EUREPHIAVERSION
- " (David Sommerseth (C) 2008-2012 GPLv2)");
+ " (David Sommerseth (C) 2008-2015 GPLv2)");
// Load the database driver
if( (error == 0) && eDBlink_init(ctx, dbi, 4) ) {
@@ -438,8 +438,7 @@ int eurephia_userauth(eurephiaCTX *ctx, const char **env, certinfo *ci)
// an authentication session do not use assigned VPN address
authsess = eDBopen_session_seed(ctx, ci->digest, ci->common_name, username,
- NULL, NULL,
- ipaddr, remport);
+ NULL, ipaddr, remport);
if( authsess == NULL ) {
// No session found
goto chk_pwd;
@@ -613,7 +612,7 @@ int eurephia_userauth(eurephiaCTX *ctx, const char **env, certinfo *ci)
*/
int eurephia_connect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
eurephiaSESSION *session = NULL;
- char *uname, *vpnipaddr, *vpnipmask, *remipaddr, *remport, *proto;
+ char *uname, *vpnipaddr, *remipaddr, *remport, *proto;
int certid = 0, uid = 0, accprofile = -1, ret = 0;
DEBUG(ctx, 10, "** Function call: eurephia_connect(...)");
@@ -621,21 +620,18 @@ int eurephia_connect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
// Fetch needed info
uname = GETENV_USERNAME(ctx, env);
vpnipaddr = GETENV_POOLIPADDR(ctx, env);
- vpnipmask = GETENV_POOLNETMASK(ctx, env);
remipaddr = GETENV_TRUSTEDIP(ctx, env);
remport = GETENV_TRUSTEDPORT(ctx, env);
proto = GETENV_PROTO1(ctx, env);
// Get a session ticket
session = eDBopen_session_seed(ctx, ci->digest, ci->common_name,
- uname, vpnipaddr, vpnipmask,
- remipaddr, remport);
+ uname, vpnipaddr, remipaddr, remport);
if( session == NULL ) {
free_nullsafe(ctx, proto);
free_nullsafe(ctx, remport);
free_nullsafe(ctx, remipaddr);
free_nullsafe(ctx, vpnipaddr);
- free_nullsafe(ctx, vpnipmask);
free_nullsafe(ctx, uname);
return 0;
}
@@ -659,7 +655,6 @@ int eurephia_connect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
free_nullsafe(ctx, remport);
free_nullsafe(ctx, remipaddr);
free_nullsafe(ctx, vpnipaddr);
- free_nullsafe(ctx, vpnipmask);
free_nullsafe(ctx, uname);
DEBUG(ctx, 10, "** Function result: eurephia_connect(...) = %i", ret);
@@ -676,7 +671,7 @@ int eurephia_connect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
*/
int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
eurephiaSESSION *session = NULL;
- char *uname, *vpnipaddr, *vpnipmask, *remipaddr, *remport;
+ char *uname, *vpnipaddr, *remipaddr, *remport;
char *bytes_sent, *bytes_rec, *duration;
int ret = 0;
@@ -685,7 +680,6 @@ int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
// Fetch needed info
uname = GETENV_USERNAME(ctx, env);
vpnipaddr = GETENV_POOLIPADDR(ctx, env);
- vpnipmask = GETENV_POOLNETMASK(ctx, env);
remipaddr = GETENV_TRUSTEDIP(ctx, env);
remport = GETENV_TRUSTEDPORT(ctx, env);
bytes_sent= GETENV_BYTESSENT(ctx, env);
@@ -694,8 +688,7 @@ int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
// Get a session ticket
session = eDBopen_session_seed(ctx, ci->digest, ci->common_name, uname,
- vpnipaddr, vpnipmask,
- remipaddr, remport);
+ vpnipaddr, remipaddr, remport);
if( session == NULL ) {
free_nullsafe(ctx, duration);
free_nullsafe(ctx, bytes_rec);
@@ -703,7 +696,6 @@ int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
free_nullsafe(ctx, remport);
free_nullsafe(ctx, remipaddr);
free_nullsafe(ctx, vpnipaddr);
- free_nullsafe(ctx, vpnipmask);
free_nullsafe(ctx, uname);
return 0;
}
@@ -720,7 +712,7 @@ int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
// Get the authentication session and destroy it
session = eDBopen_session_seed(ctx, ci->digest, ci->common_name, uname,
- NULL, NULL, remipaddr, remport);
+ NULL, remipaddr, remport);
if( !eDBdestroy_session(ctx, session) ) {
eurephia_log(ctx, LOG_WARNING, 0,
"Could not destroy authentication session (%s/%s/%s)",
@@ -733,7 +725,6 @@ int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
free_nullsafe(ctx, remport);
free_nullsafe(ctx, remipaddr);
free_nullsafe(ctx, vpnipaddr);
- free_nullsafe(ctx, vpnipmask);
free_nullsafe(ctx, uname);
DEBUG(ctx, 10, "** Function result: eurephia_disconnect(...) = %i", ret);
@@ -756,7 +747,7 @@ int eurephia_disconnect(eurephiaCTX *ctx, const char **env, certinfo *ci) {
int eurephia_learn_address(eurephiaCTX *ctx, const char *mode, const char *clientaddr,
const char **env, certinfo *ci) {
eurephiaSESSION *session = NULL;
- char *uname = NULL, *vpnipaddr = NULL, *vpnipmask = NULL,
+ char *uname = NULL, *vpnipaddr = NULL,
*remipaddr = NULL, *remport = NULL;
char *fwprofile = NULL, *fwdest = NULL;
int ret = 0, fw_enabled = 0;
@@ -787,14 +778,12 @@ int eurephia_learn_address(eurephiaCTX *ctx, const char *mode, const char *clien
// Fetch needed info
uname = GETENV_USERNAME(ctx, env);
vpnipaddr = GETENV_POOLIPADDR(ctx, env);
- vpnipmask = GETENV_POOLNETMASK(ctx, env);
remipaddr = GETENV_TRUSTEDIP(ctx, env);
remport = GETENV_TRUSTEDPORT(ctx, env);
// Get a session ticket
session = eDBopen_session_seed(ctx, ci->digest, ci->common_name, uname,
- vpnipaddr, vpnipmask,
- remipaddr, remport);
+ vpnipaddr, remipaddr, remport);
if( session == NULL ) {
ret = 0;
goto exit;
@@ -871,7 +860,6 @@ int eurephia_learn_address(eurephiaCTX *ctx, const char *mode, const char *clien
free_nullsafe(ctx, remport);
free_nullsafe(ctx, remipaddr);
free_nullsafe(ctx, vpnipaddr);
- free_nullsafe(ctx, vpnipmask);
free_nullsafe(ctx, uname);
DEBUG(ctx, 10, "** Function result: eurephia_learn_address(ctx, '%s', '%.18s', ...) = %i",
mode, clientaddr, ret);