projects
/
tinc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement privilege dropping
[tinc]
/
src
/
protocol.c
diff --git
a/src/protocol.c
b/src/protocol.c
index
c2d9289
..
2e93cff
100644
(file)
--- a/
src/protocol.c
+++ b/
src/protocol.c
@@
-1,7
+1,7
@@
/*
protocol.c -- handle the meta-protocol, basic functions
/*
protocol.c -- handle the meta-protocol, basic functions
- Copyright (C) 1999-200
1 Ivo Timmermans <ivo@o2w.nl>
,
- 2000
,2001 Guus Sliepen <guus@sliepen.eu
.org>
+ Copyright (C) 1999-200
5 Ivo Timmermans
,
+ 2000
-2006 Guus Sliepen <guus@tinc-vpn
.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-17,7
+17,7
@@
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
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.144 2003/07/29 10:50:15 guus Exp
$
+ $Id$
*/
#include "system.h"
*/
#include "system.h"
@@
-30,6
+30,8
@@
#include "utils.h"
#include "xalloc.h"
#include "utils.h"
#include "xalloc.h"
+bool tunnelserver = false;
+
/* Jumptable for the request handlers */
static bool (*request_handlers[])(connection_t *) = {
/* Jumptable for the request handlers */
static bool (*request_handlers[])(connection_t *) = {
@@
-209,18
+211,17
@@
void exit_requests(void)
bool seen_request(char *request)
{
bool seen_request(char *request)
{
- past_request_t p = {
- .request = request,
- };
- past_request_t *new;
+ past_request_t *new, p = {0};
cp();
cp();
+ p.request = request;
+
if(avl_search(past_request_tree, &p)) {
ifdebug(SCARY_THINGS) logger(LOG_DEBUG, _("Already seen request"));
return true;
} else {
if(avl_search(past_request_tree, &p)) {
ifdebug(SCARY_THINGS) logger(LOG_DEBUG, _("Already seen request"));
return true;
} else {
- new =
(past_request_t *)
xmalloc(sizeof(*new));
+ new = xmalloc(sizeof(*new));
new->request = xstrdup(request);
new->firstseen = now;
avl_insert(past_request_tree, new);
new->request = xstrdup(request);
new->firstseen = now;
avl_insert(past_request_tree, new);
@@
-238,15
+239,15
@@
void age_past_requests(void)
for(node = past_request_tree->head; node; node = next) {
next = node->next;
for(node = past_request_tree->head; node; node = next) {
next = node->next;
- p =
(past_request_t *)
node->data;
+ p = node->data;
- if(p->firstseen + ping
timeout
< now)
+ if(p->firstseen + ping
interval
< now)
avl_delete_node(past_request_tree, node), deleted++;
else
left++;
}
if(left || deleted)
avl_delete_node(past_request_tree, node), deleted++;
else
left++;
}
if(left || deleted)
- ifdebug(SCARY_THINGS) logger(LOG_DEBUG, _("Aging past requests: deleted %d, left %d
\n
"),
+ ifdebug(SCARY_THINGS) logger(LOG_DEBUG, _("Aging past requests: deleted %d, left %d"),
deleted, left);
}
deleted, left);
}