@@ -56,7 +56,7 @@ impl<'a> Flow<'a> {
5656/// The callback must not panic.
5757pub fn register_init_callback < F > ( callback : F ) -> Result < ( ) , & ' static str >
5858where
59- F : for < ' a > Fn ( * mut ThreadVars , * mut RawFlow , Option < crate :: packet:: Packet < ' a > > )
59+ F : for < ' a > Fn ( * mut ThreadVars , Flow < ' a > , Option < crate :: packet:: Packet < ' a > > )
6060 + Send
6161 + Sync
6262 + ' static ,
8888/// The callback must not panic.
8989pub fn register_update_callback < F > ( callback : F ) -> Result < ( ) , & ' static str >
9090where
91- F : for < ' a > Fn ( * mut ThreadVars , * mut RawFlow , Option < crate :: packet:: Packet < ' a > > )
91+ F : for < ' a > Fn ( * mut ThreadVars , Flow < ' a > , Option < crate :: packet:: Packet < ' a > > )
9292 + Send
9393 + Sync
9494 + ' static ,
@@ -118,7 +118,7 @@ where
118118/// The callback must not panic.
119119pub fn register_finish_callback < F > ( callback : F ) -> Result < ( ) , & ' static str >
120120where
121- F : Fn ( * mut ThreadVars , * mut RawFlow ) + Send + Sync + ' static ,
121+ F : for < ' a > Fn ( * mut ThreadVars , Flow < ' a > ) + Send + Sync + ' static ,
122122{
123123 let user = Box :: into_raw ( Box :: new ( callback) ) as * mut c_void ;
124124 if unsafe { SCFlowRegisterFinishCallback ( Some ( finish_callback_wrapper :: < F > ) , user) } {
@@ -134,7 +134,7 @@ where
134134unsafe extern "C" fn init_callback_wrapper < F > (
135135 tv : * mut ThreadVars , f : * mut RawFlow , p : * const RawPacket , user : * mut c_void ,
136136) where
137- F : for < ' a > Fn ( * mut ThreadVars , * mut RawFlow , Option < crate :: packet:: Packet < ' a > > )
137+ F : for < ' a > Fn ( * mut ThreadVars , Flow < ' a > , Option < crate :: packet:: Packet < ' a > > )
138138 + Send
139139 + Sync
140140 + ' static ,
@@ -145,13 +145,13 @@ unsafe extern "C" fn init_callback_wrapper<F>(
145145 } else {
146146 Some ( crate :: packet:: Packet :: from_ptr ( p) )
147147 } ;
148- callback ( tv, f , packet) ;
148+ callback ( tv, Flow :: from_ptr ( f ) , packet) ;
149149}
150150
151151unsafe extern "C" fn update_callback_wrapper < F > (
152152 tv : * mut ThreadVars , f : * mut RawFlow , p : * mut RawPacket , user : * mut c_void ,
153153) where
154- F : for < ' a > Fn ( * mut ThreadVars , * mut RawFlow , Option < crate :: packet:: Packet < ' a > > )
154+ F : for < ' a > Fn ( * mut ThreadVars , Flow < ' a > , Option < crate :: packet:: Packet < ' a > > )
155155 + Send
156156 + Sync
157157 + ' static ,
@@ -162,14 +162,14 @@ unsafe extern "C" fn update_callback_wrapper<F>(
162162 } else {
163163 Some ( crate :: packet:: Packet :: from_ptr ( p) )
164164 } ;
165- callback ( tv, f , packet) ;
165+ callback ( tv, Flow :: from_ptr ( f ) , packet) ;
166166}
167167
168168unsafe extern "C" fn finish_callback_wrapper < F > (
169169 tv : * mut ThreadVars , f : * mut RawFlow , user : * mut c_void ,
170170) where
171- F : Fn ( * mut ThreadVars , * mut RawFlow ) + Send + Sync + ' static ,
171+ F : for < ' a > Fn ( * mut ThreadVars , Flow < ' a > ) + Send + Sync + ' static ,
172172{
173173 let callback = & * ( user as * const F ) ;
174- callback ( tv, f ) ;
174+ callback ( tv, Flow :: from_ptr ( f ) ) ;
175175}
0 commit comments