diff options
| author | liuxueli <[email protected]> | 2024-11-27 10:27:34 +0000 |
|---|---|---|
| committer | liuxueli <[email protected]> | 2024-11-27 10:27:34 +0000 |
| commit | ad02793073353103ccccf3fab1afdd6cc30946d5 (patch) | |
| tree | b7d8bf1fad5567ccf830daa8ba6c64927b738a85 /scanner/session_scanner.c | |
| parent | 38307ed232012dcbd44bd95167b8f37c7186d1fb (diff) | |
scanner and security enforcer rebase developdev-scanner
Diffstat (limited to 'scanner/session_scanner.c')
| -rw-r--r-- | scanner/session_scanner.c | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/scanner/session_scanner.c b/scanner/session_scanner.c deleted file mode 100644 index dad6ea2..0000000 --- a/scanner/session_scanner.c +++ /dev/null @@ -1,83 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#include "stellar/utils.h" -#include "stellar/session.h" -#include "stellar/session_scanner.h" - -struct session_scanner -{ - int exdata_idx; - struct scannner *scanner; - struct logger *logger; -}; - -static void session_scanner_exdata_free(int idx __unused, void *ex_ptr, void *arg __unused) -{ - if(ex_ptr==NULL)return; - FREE(ex_ptr); -} - -const struct kv *session_scanner_get_attribute(struct session_scanner *sess_scanner, struct session *sess, enum ATTRIBUTE_KV_INDEX index) -{ - if(sess_scanner==NULL || sess==NULL || index>=ATTRIBUTE_INDEX_MAX || index<=ATTRIBUTE_KV_UNKNOWN) - { - return NULL; - } - - return attribute_kv_get((struct attribute_kv *)session_get_exdata(sess, sess_scanner->exdata_idx), index); -} - -static void session_scanner_on_session(struct session *sess, enum session_state state, struct packet *pkt, void *args) -{ - -} - -struct session_scanner *session_scanner_new(struct module_manager *mod_mgr, struct scanner *scanner) -{ - if(mod_mgr==NULL || scanner==NULL) - { - return NULL; - } - - struct session_scanner *sess_scanner=CALLOC(struct session_scanner, 1); - sess_scanner->scanner=scanner; - sess_scanner->logger=module_manager_get_logger(mod_mgr); - - struct module *sess_mgr_mod=module_manager_get_module(mod_mgr, SESSION_MANAGER_MODULE_NAME); - struct session_manager *sess_mgr=module_to_session_manager(sess_mgr_mod); - struct mq_schema *mq_s=module_manager_get_mq_schema(mod_mgr); - - if(sess_mgr==NULL || mq_s==NULL) - { - STELLAR_LOG_FATAL(sess_scanner->logger, SCANNER_MODULE_NAME, "session_scanner_new failed to get session manager or mq schema"); - goto INIT_ERROR; - } - - session_manager_subscribe_tcp(sess_mgr, session_scanner_on_session, sess_scanner); - session_manager_subscribe_udp(sess_mgr, session_scanner_on_session, sess_scanner); - - sess_scanner->exdata_idx=session_manager_new_session_exdata_index(sess_mgr, "SCANNER_EXDATA_SESSION", session_scanner_exdata_free, NULL); - if(sess_scanner->exdata_idx<0) - { - STELLAR_LOG_FATAL(sess_scanner->logger, SCANNER_MODULE_NAME, "session_scanner_new failed to create exdata index"); - goto INIT_ERROR; - } - - return sess_scanner; - -INIT_ERROR: - session_scanner_free(sess_scanner); - return NULL; -} - -void session_scanner_free(struct session_scanner *sess_scanner) -{ - if(sess_scanner==NULL) - { - return ; - } - - FREE(sess_scanner); -}
\ No newline at end of file |
