#include #include #include #include #include int main(int argc, char **argv) { eurephiaCTX *ctx = NULL; int i, certid = 0, uid = 0; eurephiaSESSION *sk = NULL; #ifdef MEMWATCH fprintf(stderr, "MEMWATCH enabled\n"); #endif ctx = (eurephiaCTX *) malloc(sizeof(eurephiaCTX)); ctx->log = fopen("./debug.log", "wb"); ctx->loglevel = 23; ctx->fatal_error = 0; if( !eDBlink_init(ctx, "./drivers/sqlite/eurephiadb-sqlite.so") ) { fprintf(stderr, "Could not load dblink driver\n"); return 1; } if( !eDBconnect(ctx, 1, (const char **)argv) ) { fprintf(stderr, "Could not open the database: %s\n", argv[1]); return 1; }; fprintf(stdout, "[OK] blacklist_cert_check: %i\n", eDBblacklist_check(ctx, attempt_CERTIFICATE, "3B:15:3F:4A:4A:AC:B9:61:3C:E3:97:7B:4C:01:92:DC:C4:DE:6C:F2")); certid = eDBauth_TLS(ctx, "Mitt_Lille_Mini_Hovedkontor", "MyTestingAccoun2", "test2@testingtest.net", "3B:15:3F:4A:4A:AC:B9:61:3C:E3:97:7B:4C:01:92:DC:C4:DE:6C:F2", "0"); fprintf(stdout, "[OK] Certid: %i\n", certid); uid = eDBauth_user(ctx, certid, "test03", "testpwd"); fprintf(stdout, "[OK] uicid: %i\n", uid); if( (uid > 0) && (certid > 0) ) { sk = eDBgenerate_sessionkey(ctx, "3B:15:3F:4A:4A:AC:B9:61:3C:E3:97:7B:4C:01:92:DC:C4:DE:6C:F2", "MyTestingAccount", "test01", "10.10.10.2", "255.255.255.0", "123.12.34.231", "11223"); eDBregister_login(ctx, sk, certid, uid, "tst", "remip", "remport","vpnip","vpnipmask"); if( argv[2] != NULL && strcmp(argv[2], "macaddr") == 0 ) { eDBregister_vpnmacaddr(ctx, sk, argv[3]); } eDBregister_logout(ctx, sk, "120394", "30492"); } for( i = 0; i < 5; i++ ) { fprintf(stdout, "[%i] blacklist_cert_check: %i\n", i, eDBblacklist_check(ctx, attempt_CERTIFICATE, "FF:FF:FF:45:4A:CA:9B:61:C3:E3:79:7B:1F:01:29:CD:C4:ED:C6:83")); fprintf(stdout, "[%i] Certid: %i\n", i, eDBauth_TLS(ctx, "Test Office", "Testing test", "test@testingtest.net", "FF:FF:FF:45:4A:CA:9B:61:C3:E3:79:7B:1F:01:29:CD:C4:ED:C6:83", "0")); eDBregister_attempt(ctx, attempt_CERTIFICATE, "FF:FF:FF:45:4A:CA:9B:61:C3:E3:79:7B:1F:01:29:CD:C4:ED:C6:83"); } fprintf(stdout, "[OK] blacklist_ip_check: %i\n", eDBblacklist_check(ctx, attempt_IPADDR, "127.0.0.3")); for( i = 0; i < 7; i++ ) { fprintf(stdout, "[%i] blacklist_ip_check: %i\n", i, eDBblacklist_check(ctx, attempt_IPADDR, "127.0.0.2")); eDBregister_attempt(ctx, attempt_IPADDR, "127.0.0.2"); } fprintf(stdout, "session values: %s = %s\n", "macaddr", eDBget_session_value(ctx, sk, "macaddr")); fprintf(stdout, "session values: %s = %s\n", "var1", eDBget_session_value(ctx, sk, "var1")); fprintf(stdout, "session values: %s = %s\n", "var2", eDBget_session_value(ctx, sk, "var2")); fprintf(stdout, "session values: %s = %s\n", "var3", eDBget_session_value(ctx, sk, "var3")); fprintf(stdout, "session values: %s = %s\n", "var4", eDBget_session_value(ctx, sk, "var4")); if( argv[2] != NULL && strcmp(argv[2], "macaddr") != 0 ) { eDBset_session_value(ctx, sk, argv[2], argv[3]); } eDBfree_sessionkey(sk); if( (argv[4] != NULL) && (strcmp(argv[4], "DESTROY") == 0) ) { eDBdestroy_session(ctx, argv[5]); } eDBdisconnect(ctx); eDBlink_free(ctx); fclose(ctx->log); free(ctx); return 0; }