diff options
author | Jeremy Allison <jra@samba.org> | 2003-02-28 00:26:20 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2003-02-28 00:26:20 +0000 |
commit | 9f0ae6fad2d0099a58fec389ddd430c0448ec02e (patch) | |
tree | 9065983abc2e496538a2c7a43e7d7c1815ff48c9 /source3/nsswitch/winbindd.h | |
parent | 17c417e6e66e05d6bcee98cb1c7ebfa7d98a5347 (diff) | |
download | samba-9f0ae6fad2d0099a58fec389ddd430c0448ec02e.tar.gz samba-9f0ae6fad2d0099a58fec389ddd430c0448ec02e.tar.bz2 samba-9f0ae6fad2d0099a58fec389ddd430c0448ec02e.zip |
*Excellent* patch from Michael Steffens <michael_steffens@hp.com> to limit
the unix domain sockets used by winbindd (also solves FD_SETSIZE problem
in winbindd to boot !). Adds a "last_access" field to winbindd connections,
and will close the oldest idle connection once the number of open connections
goes over WINBINDD_MAX_SIMULTANEOUS_CLIENTS (defined in local.h as 200
currently).
Jeremy.
(This used to be commit a82caefda49396641e8650db8a7ef51752ba6c41)
Diffstat (limited to 'source3/nsswitch/winbindd.h')
-rw-r--r-- | source3/nsswitch/winbindd.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/source3/nsswitch/winbindd.h b/source3/nsswitch/winbindd.h index 8bd8a83748..42ef209faf 100644 --- a/source3/nsswitch/winbindd.h +++ b/source3/nsswitch/winbindd.h @@ -36,16 +36,17 @@ /* Client state structure */ struct winbindd_cli_state { - struct winbindd_cli_state *prev, *next; /* Linked list pointers */ - int sock; /* Open socket from client */ - pid_t pid; /* pid of client */ - int read_buf_len, write_buf_len; /* Indexes in request/response */ - BOOL finished; /* Can delete from list */ - BOOL write_extra_data; /* Write extra_data field */ - struct winbindd_request request; /* Request from client */ - struct winbindd_response response; /* Respose to client */ - struct getent_state *getpwent_state; /* State for getpwent() */ - struct getent_state *getgrent_state; /* State for getgrent() */ + struct winbindd_cli_state *prev, *next; /* Linked list pointers */ + int sock; /* Open socket from client */ + pid_t pid; /* pid of client */ + int read_buf_len, write_buf_len; /* Indexes in request/response */ + BOOL finished; /* Can delete from list */ + BOOL write_extra_data; /* Write extra_data field */ + time_t last_access; /* Time of last access (read or write) */ + struct winbindd_request request; /* Request from client */ + struct winbindd_response response; /* Respose to client */ + struct getent_state *getpwent_state; /* State for getpwent() */ + struct getent_state *getgrent_state; /* State for getgrent() */ }; /* State between get{pw,gr}ent() calls */ |