diff options
| author | luwenpeng <[email protected]> | 2024-09-14 15:20:59 +0800 |
|---|---|---|
| committer | luwenpeng <[email protected]> | 2024-09-18 14:36:31 +0800 |
| commit | f559d67b93df78e9f6d5c3fe301b688b5c857d98 (patch) | |
| tree | f55ed820987962c9ccbc409dfd23d58b988f7f93 /include | |
| parent | 6ddb99bfcd0458f2ee253ea80755d9f26b423d66 (diff) | |
test(packet manager): test packets flow between multiple queues
Diffstat (limited to 'include')
| -rw-r--r-- | include/stellar/log.h | 36 | ||||
| -rw-r--r-- | include/stellar/packet.h | 10 | ||||
| -rw-r--r-- | include/stellar/packet_manager.h | 14 |
3 files changed, 43 insertions, 17 deletions
diff --git a/include/stellar/log.h b/include/stellar/log.h index a075267..52cc174 100644 --- a/include/stellar/log.h +++ b/include/stellar/log.h @@ -16,37 +16,61 @@ enum log_level }; #define STELLAR_LOG_TRACE(logger, module, format, ...) \ - if (log_check_level((logger), LOG_TRACE)) \ + if ((logger) == NULL) \ + { \ + printf("TRACE: (%s): " format "\n", module, ##__VA_ARGS__); \ + } \ + else if (log_check_level((logger), LOG_TRACE)) \ { \ log_print((logger), LOG_TRACE, (module), (format), ##__VA_ARGS__); \ } #define STELLAR_LOG_DEBUG(logger, module, format, ...) \ - if (log_check_level((logger), LOG_DEBUG)) \ + if ((logger) == NULL) \ + { \ + printf("DEBUG: (%s): " format "\n", module, ##__VA_ARGS__); \ + } \ + else if (log_check_level((logger), LOG_DEBUG)) \ { \ log_print((logger), LOG_DEBUG, (module), (format), ##__VA_ARGS__); \ } #define STELLAR_LOG_INFO(logger, module, format, ...) \ - if (log_check_level((logger), LOG_INFO)) \ + if ((logger) == NULL) \ + { \ + printf("INFO: (%s): " format "\n", module, ##__VA_ARGS__); \ + } \ + else if (log_check_level((logger), LOG_INFO)) \ { \ log_print((logger), LOG_INFO, (module), (format), ##__VA_ARGS__); \ } #define STELLAR_LOG_WARN(logger, module, format, ...) \ - if (log_check_level((logger), LOG_WARN)) \ + if ((logger) == NULL) \ + { \ + printf("WARN: (%s): " format "\n", module, ##__VA_ARGS__); \ + } \ + else if (log_check_level((logger), LOG_WARN)) \ { \ log_print((logger), LOG_WARN, (module), (format), ##__VA_ARGS__); \ } #define STELLAR_LOG_ERROR(logger, module, format, ...) \ - if (log_check_level((logger), LOG_ERROR)) \ + if ((logger) == NULL) \ + { \ + printf("ERROR: (%s): " format "\n", module, ##__VA_ARGS__); \ + } \ + else if (log_check_level((logger), LOG_ERROR)) \ { \ log_print((logger), LOG_ERROR, (module), (format), ##__VA_ARGS__); \ } #define STELLAR_LOG_FATAL(logger, module, format, ...) \ - if (log_check_level((logger), LOG_FATAL)) \ + if ((logger) == NULL) \ + { \ + printf("FATAL: (%s): " format "\n", module, ##__VA_ARGS__); \ + } \ + else if (log_check_level((logger), LOG_FATAL)) \ { \ log_print((logger), LOG_FATAL, (module), (format), ##__VA_ARGS__); \ } diff --git a/include/stellar/packet.h b/include/stellar/packet.h index d1431a0..5ea2e75 100644 --- a/include/stellar/packet.h +++ b/include/stellar/packet.h @@ -185,16 +185,6 @@ uint16_t packet_get_raw_len(const struct packet *pkt); const char *packet_get_payload(const struct packet *pkt); uint16_t packet_get_payload_len(const struct packet *pkt); -enum packet_stage -{ - PACKET_STAGE_PREROUTING, - PACKET_STAGE_INPUT, - PACKET_STAGE_FORWARD, - PACKET_STAGE_OUTPUT, - PACKET_STAGE_POSTROUTING, - PACKET_STAGE_MAX, -}; - #ifdef __cplusplus } #endif diff --git a/include/stellar/packet_manager.h b/include/stellar/packet_manager.h index 2a31974..87e6aed 100644 --- a/include/stellar/packet_manager.h +++ b/include/stellar/packet_manager.h @@ -7,6 +7,16 @@ extern "C" #include "packet.h" +enum packet_stage +{ + PACKET_STAGE_PREROUTING, + PACKET_STAGE_INPUT, + PACKET_STAGE_FORWARD, + PACKET_STAGE_OUTPUT, + PACKET_STAGE_POSTROUTING, + PACKET_STAGE_MAX, +}; + struct packet_manager; struct packet_manager_schema; struct packet_manager_runtime; @@ -15,8 +25,10 @@ struct packet_manager_schema *packet_manager_get_schema(struct packet_manager *p struct packet_manager_runtime *packet_manager_get_runtime(struct packet_manager *pkt_mgr, uint16_t thr_idx); typedef void on_packet_stage_callback(enum packet_stage stage, struct packet *pkt, void *args); -int packet_manager_schema_add_subscriber(struct packet_manager_schema *schema, enum packet_stage stage, on_packet_stage_callback cb, void *args); +int packet_manager_schema_add_subscriber(struct packet_manager_schema *pkt_mgr_schema, enum packet_stage stage, on_packet_stage_callback cb, void *args); +// take 只执行一次 ??? +// 同一 stage 后面的 msg 是否中断???不中断 void packet_manager_runtime_take_packet(struct packet_manager_runtime *pkt_mgr_rt, struct packet *pkt); void packet_manager_runtime_schedule_packet(struct packet_manager_runtime *pkt_mgr_rt, struct packet *pkt, enum packet_stage stage); |
