Dolda2000 GitWeb
/
doldaconnect.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
First potentially working version of the transsocket.
[doldaconnect.git]
/
daemon
/
net.c
diff --git
a/daemon/net.c
b/daemon/net.c
index
6f83266
..
ed7ad9b
100644
(file)
--- a/
daemon/net.c
+++ b/
daemon/net.c
@@
-390,6
+390,14
@@
void putsock(struct socket *sk)
}
}
}
}
+void quitsock(struct socket *sk)
+{
+ sk->readcb = NULL;
+ sk->writecb = NULL;
+ sk->errcb = NULL;
+ putsock(sk);
+}
+
static void linksock(struct scons **list, struct socket *sk)
{
struct scons *sc;
static void linksock(struct scons **list, struct socket *sk)
{
struct scons *sc;
@@
-771,6
+779,18
@@
size_t sockgetdatalen(struct socket *sk)
/* return(sockgetdatalen(sk->back)); */
/* } */
/* return(sockgetdatalen(sk->back)); */
/* } */
+size_t socktqueuesize(struct socket *sk)
+{
+ size_t ret;
+
+ ret = 0;
+ while(1) {
+ ret += sockgetdatalen(sk->back);
+ if((sk = sk->back->pnext) == NULL)
+ return(ret);
+ }
+}
+
ssize_t sockqueueleft(struct socket *sk)
{
return(sk->back->maxbuf - sockgetdatalen(sk->back));
ssize_t sockqueueleft(struct socket *sk)
{
return(sk->back->maxbuf - sockgetdatalen(sk->back));