]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/fde.h
3 * $Id: fde.h,v 1.15 2008/02/12 23:22:13 rousskov Exp $
6 * SQUID Web Proxy Cache http://www.squid-cache.org/
7 * ----------------------------------------------------------
9 * Squid is the result of efforts by numerous individuals from
10 * the Internet community; see the CONTRIBUTORS file for full
11 * details. Many organizations have provided support for Squid's
12 * development; see the SPONSORS file for full details. Squid is
13 * Copyrighted (C) 2001 by the Regents of the University of
14 * California; see the COPYRIGHT file for full details. Squid
15 * incorporates software developed and/or copyrighted by other
16 * sources; see the CREDITS file for full details.
18 * This program is free software; you can redistribute it and/or modify
19 * it under the terms of the GNU General Public License as published by
20 * the Free Software Foundation; either version 2 of the License, or
21 * (at your option) any later version.
23 * This program is distributed in the hope that it will be useful,
24 * but WITHOUT ANY WARRANTY; without even the implied warranty of
25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 * GNU General Public License for more details.
28 * You should have received a copy of the GNU General Public License
29 * along with this program; if not, write to the Free Software
30 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
38 #include "IPAddress.h"
47 /** Clear the fde class properly back to NULL equivalent. */
49 memset(this, 0, sizeof(fde
));
50 local_addr
.SetEmpty(); // IPAddress likes to be setup nicely.
53 /* NOTE: memset is used on fdes today. 20030715 RBC */
54 static void DumpStats (StoreEntry
*);
56 char const *remoteAddr() const;
57 void dumpStats (StoreEntry
&, int);
58 bool readPending(int);
59 void noteUse(PconnPool
*);
67 char ipaddr
[MAX_IPSTRLEN
]; /* dotted decimal address of peer */
68 char desc
[FD_DESC_SZ
];
73 unsigned int close_request
:1;
74 unsigned int write_daemon
:1;
75 unsigned int closing
:1;
76 unsigned int socket_eof
:1;
77 unsigned int nolinger
:1;
78 unsigned int nonblocking
:1;
80 unsigned int called_connect
:1;
81 unsigned int nodelay
:1;
82 unsigned int close_on_exec
:1;
83 unsigned int read_pending
:1;
84 unsigned int write_pending
:1;
85 unsigned int transparent
:1;
89 int64_t bytes_written
;
92 int uses
; /* ie # req's over persistent conn */
98 struct _fde_disk disk
;
103 AsyncCall::Pointer timeoutHandler
;
106 AsyncCall::Pointer closeHandler
;
107 CommWriteStateData
*wstate
; /* State data for comm_write */
108 READ_HANDLER
*read_method
;
109 WRITE_HANDLER
*write_method
;
119 unsigned char upstreamTOS
; /* see FwdState::dispatch() */
124 #endif /* SQUID_FDE_H */