#include "nufw.h"
#include <nubase.h>
Include dependency graph for authsrv.c:

Go to the source code of this file.
Functions | |
| int | auth_process_answer (char *dgram, int dgram_size) |
| static int | auth_packet_to_decision (char *dgram, int dgram_size) |
| void * | authsrv (void *data) |
Variables | |
| pthread_mutex_t | ipq_mutex = PTHREAD_MUTEX_INITIALIZER |
authsrv() thread (created by auth_request_send()) wait for new NuAuth packets, and then call auth_packet_to_decision() to process packet.
Definition in file authsrv.c.
| static int auth_packet_to_decision | ( | char * | dgram, | |
| int | dgram_size | |||
| ) | [static] |
Process authentication server (NuAuth) packet answer. Different answers can be:
Definition at line 274 of file authsrv.c.
References AUTH_ANSWER, AUTH_CONN_DESTROY, AUTH_CONN_UPDATE, auth_process_answer(), DEBUG_AREA_GW, DEBUG_AREA_MAIN, DEBUG_LEVEL_DEBUG, DEBUG_LEVEL_WARNING, debug_log_printf, log_area_printf(), and PROTO_NUFW_VERSION.
Referenced by authsrv().
Here is the call graph for this function:

| int auth_process_answer | ( | char * | dgram, | |
| int | dgram_size | |||
| ) |
Process NuAuth message of type AUTH_ANSWER
Definition at line 40 of file authsrv.c.
References DEBUG_AREA_GW, DEBUG_AREA_PACKET, DEBUG_LEVEL_VERBOSE_DEBUG, DEBUG_LEVEL_WARNING, debug_log_printf, nuv4_nuauth_decision_response_t::decision, DECISION_ACCEPT, DECISION_REJECT, IPQ_SET_VERDICT, IPQ_SET_VWMARK, log_area_printf(), packets_list_t::mutex, nufw_set_mark, nuv4_nuauth_decision_response_t::packet_id, packets_list, nuv4_nuauth_decision_response_t::payload_len, pckt_tx, psearch_and_destroy(), send_icmp_unreach(), and nuv4_nuauth_decision_response_t::tcmark.
Referenced by auth_packet_to_decision().
Here is the call graph for this function:

| void* authsrv | ( | void * | data | ) |
Thread waiting to authentication server (NuAuth) answer. Call auth_packet_to_decision() on new packet.
Definition at line 321 of file authsrv.c.
References auth_packet_to_decision(), nuauth_conn::auth_server_mutex, nuauth_conn::auth_server_running, DEBUG_AREA_GW, DEBUG_LEVEL_VERBOSE_DEBUG, log_area_printf(), nuauth_conn::mutex, nussl_get_error(), nussl_read(), NUSSL_SOCK_TIMEOUT, nuauth_conn::session, and tls.
Referenced by create_authserver().
Here is the call graph for this function:

1.4.7