Mercurial > hg > freeDiameter
diff libfdcore/p_sr.c @ 1248:c9a160b815ea
Fix issue with anscb in the p_sr expiry mechanism. Thanks Guangming for the report.
author | Sebastien Decugis <sdecugis@freediameter.net> |
---|---|
date | Fri, 22 Nov 2013 16:07:42 +0100 |
parents | 0420ccc4671a |
children |
line wrap: on
line diff
--- a/libfdcore/p_sr.c Tue Nov 12 16:16:15 2013 +0800 +++ b/libfdcore/p_sr.c Fri Nov 22 16:07:42 2013 +0100 @@ -116,7 +116,6 @@ struct msg * request; struct fd_peer * sentto; void (*expirecb)(void *, DiamId_t, size_t, struct msg **); - void (*anscb)(void *, struct msg **); void * data; int no_error; @@ -176,11 +175,11 @@ /* Retrieve callback in the message */ - CHECK_FCT_DO( fd_msg_anscb_get( request, &anscb, &expirecb, &data ), break); + CHECK_FCT_DO( fd_msg_anscb_get( request, NULL, &expirecb, &data ), break); ASSERT(expirecb); /* Clean up this expirecb from the message */ - CHECK_FCT_DO( fd_msg_anscb_associate( request, anscb, data, NULL, NULL ), break); + CHECK_FCT_DO( fd_msg_anscb_reset( request, 0, 1 ), break); /* Call it */ (*expirecb)(data, sentto->p_hdr.info.pi_diamid, sentto->p_hdr.info.pi_diamidlen, &request);