Commit e73c8d959dbdfd2708986eb5d60410bc7fd6f028
1 parent
4f95d8ce
get rid of some unneccessary system calls...one socket and one close
Showing
3 changed files
with
10 additions
and
10 deletions
... | ... | @@ -122,10 +122,6 @@ httpWriterWrite(void * _this, int fd) |
122 | 122 | break; |
123 | 123 | |
124 | 124 | case HTTP_WRITER_DONE: |
125 | - if (HTTP_MESSAGE_PIPED == this->current->type) { | |
126 | - close(this->current->handle); | |
127 | - } | |
128 | - | |
129 | 125 | this->state = HTTP_WRITER_GET; |
130 | 126 | |
131 | 127 | memmove(respq->msgs, | ... | ... |
... | ... | @@ -35,9 +35,17 @@ socketCtor(void * _this, va_list * params) |
35 | 35 | { |
36 | 36 | Sock this = _this; |
37 | 37 | int reUse = 1; //! \todo make this configurable |
38 | + int port; | |
38 | 39 | |
39 | 40 | this->log = va_arg(* params, Logger); |
40 | - this->port = va_arg(* params, int); | |
41 | + port = va_arg(* params, int); | |
42 | + | |
43 | + //! if port is -1 do not initialize the socket. (Used with accept) | |
44 | + if (-1 == port) { | |
45 | + return 0; | |
46 | + } else { | |
47 | + this->port = port; | |
48 | + } | |
41 | 49 | |
42 | 50 | //! Create socket for incoming connections |
43 | 51 | if (-1 == (this->handle = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP))) { | ... | ... |
... | ... | @@ -43,11 +43,7 @@ socketAccept(Sock this, char (*remoteAddr)[16]) |
43 | 43 | * the data structure without creation of a socket at all. |
44 | 44 | * For now i simply close the socket here.... :D |
45 | 45 | */ |
46 | - sock = new(Sock, this->log, this->port); | |
47 | - close(sock->handle); | |
48 | - /** | |
49 | - * \todo change port to remote port on success | |
50 | - */ | |
46 | + sock = new(Sock, this->log, -1); | |
51 | 47 | |
52 | 48 | // Wait for a client to connect |
53 | 49 | sock->handle = accept(this->handle, (struct sockaddr *) &(sock->addr), &len); | ... | ... |
Please
register
or
login
to post a comment