diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-02-03 02:35:52 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:09:29 -0500 |
commit | 66170ef8b36b499aa5b44ef10c1bd362a50f2636 (patch) | |
tree | 5bfb3d759ad397a6a42588b97802e237781c35e8 /source4/smb_server | |
parent | 1774b36c1464e1f04f982b83577e62fa31cbeef9 (diff) | |
download | samba-66170ef8b36b499aa5b44ef10c1bd362a50f2636.tar.gz samba-66170ef8b36b499aa5b44ef10c1bd362a50f2636.tar.bz2 samba-66170ef8b36b499aa5b44ef10c1bd362a50f2636.zip |
r5185: make all the events data structures private to events.c. This will
make it possible to add optimisations to the events code such as
keeping the next timed event in a sorted list, and using epoll for
file descriptor events.
I also removed the loop events code, as it wasn't being used anywhere,
and changed timed events to always be one-shot (as adding a new timed
event in the event handler is so easy to do if needed)
(This used to be commit d7b4b6de51342a65bf46fce772d313f92f8d73d3)
Diffstat (limited to 'source4/smb_server')
-rw-r--r-- | source4/smb_server/request.c | 2 | ||||
-rw-r--r-- | source4/smb_server/smb_server.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/source4/smb_server/request.c b/source4/smb_server/request.c index 26988bf205..c6847889f7 100644 --- a/source4/smb_server/request.c +++ b/source4/smb_server/request.c @@ -300,7 +300,7 @@ void req_send_reply_nosign(struct smbsrv_request *req) ready for write events */ DLIST_ADD_END(req->smb_conn->pending_send, req, struct smbsrv_request *); - req->smb_conn->connection->event.fde->flags |= EVENT_FD_WRITE; + EVENT_FD_WRITEABLE(req->smb_conn->connection->event.fde); } /* diff --git a/source4/smb_server/smb_server.c b/source4/smb_server/smb_server.c index 1537bf6a47..5220df034c 100644 --- a/source4/smb_server/smb_server.c +++ b/source4/smb_server/smb_server.c @@ -662,7 +662,7 @@ static void smbsrv_recv(struct stream_connection *conn, struct timeval t, uint16 status = receive_smb_request(smb_conn, t); if (NT_STATUS_IS_ERR(status)) { - conn->event.fde->flags = 0; + talloc_free(conn->event.fde); smbsrv_terminate_connection(smb_conn, nt_errstr(status)); return; } @@ -710,7 +710,7 @@ static void smbsrv_send(struct stream_connection *conn, struct timeval t, uint16 /* if no more requests are pending to be sent then we should stop select for write */ if (smb_conn->pending_send == NULL) { - conn->event.fde->flags &= ~EVENT_FD_WRITE; + EVENT_FD_NOT_WRITEABLE(conn->event.fde); } } |