along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id: protocol.c,v 1.28.4.124 2002/03/21 23:11:53 guus Exp $
+ $Id: protocol.c,v 1.28.4.127 2002/03/23 20:12:29 guus Exp $
*/
#include "config.h"
if(len < 0 || len > MAXBUFSIZE-1)
{
- syslog(LOG_ERR, _("Output buffer overflow while sending request to %s (%s)"), request_name[request], c->name, c->hostname);
+ syslog(LOG_ERR, _("Output buffer overflow while sending request to %s (%s)"), c->name, c->hostname);
return -1;
}
return 0;
}
-int request_compare(past_request_t *a, past_request_t *b)
+int past_request_compare(past_request_t *a, past_request_t *b)
{
cp
return strcmp(a->request, b->request);
}
+void free_past_request(past_request_t *r)
+{
+cp
+ if(r->request)
+ free(r->request);
+ free(r);
+cp
+}
+
void init_requests(void)
{
cp
- past_request_tree = avl_alloc_tree((avl_compare_t)request_compare, (avl_action_t)free);
+ past_request_tree = avl_alloc_tree((avl_compare_t)past_request_compare, (avl_action_t)free_past_request);
cp
}
-void exit_request(void)
+void exit_requests(void)
{
cp
avl_delete_tree(past_request_tree);
p.request = request;
if(avl_search(past_request_tree, &p))
- return 1;
+ {
+ if(debug_lvl >= DEBUG_SCARY_THINGS)
+ syslog(LOG_DEBUG, _("Already seen request"));
+ return 1;
+ }
else
{
new = (past_request_t *)xmalloc(sizeof(*new));