chiark
/
gitweb
/
~ian
/
secnet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Import release 0.1.9
[secnet.git]
/
tun.c
diff --git
a/tun.c
b/tun.c
index 01c0cb8960f942d505ccf8d3bc3d1fd077d2717d..0f88791703c68a2d06e1fe122b3c6e12b6a73e92 100644
(file)
--- a/
tun.c
+++ b/
tun.c
@@
-12,7
+12,7
@@
#include <linux/if_tun.h>
#endif
#include <linux/if_tun.h>
#endif
-/*
XXX w
here do we find if_tun on other platforms? */
+/*
W
here do we find if_tun on other platforms? */
/* Connection to the kernel through the universal TUN/TAP driver */
/* Connection to the kernel through the universal TUN/TAP driver */
@@
-48,6
+48,7
@@
static void tun_afterpoll(void *sst, struct pollfd *fds, int nfds,
struct tun *st=sst;
int l;
struct tun *st=sst;
int l;
+ if (nfds==0) return;
if (fds[0].revents&POLLERR) {
printf("tun_afterpoll: hup!\n");
}
if (fds[0].revents&POLLERR) {
printf("tun_afterpoll: hup!\n");
}
@@
-75,8
+76,8
@@
static void tun_deliver_to_kernel(void *sst, void *cid,
struct tun *st=sst;
BUF_ASSERT_USED(buf);
struct tun *st=sst;
BUF_ASSERT_USED(buf);
-
-
/* No error checking, because we'd just throw the packet away anyway
*/
+ /* No error checking, because we'd just throw the packet away
+
anyway if it didn't work.
*/
write(st->fd,buf->start,buf->size);
BUF_FREE(buf);
}
write(st->fd,buf->start,buf->size);
BUF_FREE(buf);
}
@@
-251,9
+252,6
@@
static list_t *tun_old_apply(closure_t *self, struct cloc loc, dict_t *context,
st=safe_malloc(sizeof(*st),"tun_old_apply");
st=safe_malloc(sizeof(*st),"tun_old_apply");
- Message(M_WARNING,"the tun-old code has never been tested. Please report "
- "success or failure to steve@greenend.org.uk\n");
-
/* First parameter must be a dict */
item=list_elem(args,0);
if (!item || item->type!=t_dict)
/* First parameter must be a dict */
item=list_elem(args,0);
if (!item || item->type!=t_dict)