refactor(session manager): turning the session manager into a stellar module
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#include "stellar/exdata.h"
|
||||
#include "session_internal.h"
|
||||
#include "session_manager.h"
|
||||
#include "session_manager_runtime.h"
|
||||
|
||||
void session_init(struct session *sess)
|
||||
{
|
||||
@@ -208,6 +209,7 @@ struct tcp_segment *session_get_tcp_segment(struct session *sess)
|
||||
{
|
||||
sess->sess_mgr_stat->tcp_segs_consumed++;
|
||||
half->in_order_ref++;
|
||||
half->in_order.user_data = sess;
|
||||
return &half->in_order;
|
||||
}
|
||||
else
|
||||
@@ -221,6 +223,7 @@ struct tcp_segment *session_get_tcp_segment(struct session *sess)
|
||||
// TODO
|
||||
sess->sess_mgr_stat->tcp_segs_consumed++;
|
||||
sess->sess_mgr_stat->tcp_segs_reordered++;
|
||||
seg->user_data = sess;
|
||||
}
|
||||
return seg;
|
||||
}
|
||||
@@ -461,3 +464,15 @@ void session_print(const struct session *sess)
|
||||
session_to_str(sess, 0, buff, sizeof(buff));
|
||||
printf("%s\n", buff);
|
||||
}
|
||||
|
||||
void session_set_exdata(struct session *sess, int idx, void *ex_ptr)
|
||||
{
|
||||
struct exdata_runtime *rte = (struct exdata_runtime *)session_get_user_data(sess);
|
||||
exdata_set(rte, idx, ex_ptr);
|
||||
}
|
||||
|
||||
void *session_get_exdata(const struct session *sess, int idx)
|
||||
{
|
||||
struct exdata_runtime *rte = (struct exdata_runtime *)session_get_user_data(sess);
|
||||
return exdata_get(rte, idx);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user