98 (*(
t->func))(
t->what);
113 to_msec = howlong * 1000;
159 DPRINT(
"Dispatch thread stop event!\n");
190 DPRINT(
"Dispatch thread stopped!\n");
205 unsigned char packbuf[4095];
213 warning(
"receive_packet failed on %s: %d",
ip->name,
216 if (
ip->errors > 20) {
218 warning(
"Interface %s no longer appears valid.",
243 warning(
"Discarding packet with a non-matching target physical address\n");
247 (*bootp_packet_handler)(&
adapter->DhclientInfo, &
u.packet,
result,
248 from.sin_port, ifrom, &hfrom);
261 if (
q->func == where &&
q->what ==
what) {
282 error(
"Can't allocate timeout structure!");
303 if (
t->next->when >
q->when) {
323 if (
q->func == where &&
q->what ==
what) {
349 error(
"can't allocate protocol struct for %s",
name);
403 prev->
next =
p->next;
417 if(
p->local == (
void *)
info )
return p;
PDHCP_ADAPTER AdapterFindByHardwareAddress(u_int8_t haddr[16], u_int8_t hlen)
PDHCP_ADAPTER AdapterFindInfo(struct interface_info *ip)
void add_protocol(char *name, int fd, void(*handler)(struct protocol *), void *local)
void remove_protocol(struct protocol *proto)
HANDLE hAdapterStateChangedEvent
void cancel_timeout(void(*where)(void *), void *what)
static struct timeout * free_timeouts
void dispatch(HANDLE hStopEvent)
void got_one(struct protocol *l)
struct timeout * timeouts
struct protocol * protocols
struct protocol * find_protocol_by_adapter(struct interface_info *info)
int interface_link_status(char *ifname)
void add_timeout(time_t when, void(*where)(void *), void *what)
void(* bootp_packet_handler)(struct interface_info *, struct dhcp_packet *, int, unsigned int, struct iaddr, struct hardware *)
#define DH_DbgPrint(_t_, _x_)
UINT(* handler)(MSIPACKAGE *)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
BOOL WSAAPI WSAResetEvent(IN WSAEVENT hEvent)
BOOL WSAAPI WSACloseEvent(IN WSAEVENT hEvent)
INT WSAAPI WSAEventSelect(IN SOCKET s, IN WSAEVENT hEventObject, IN LONG lNetworkEvents)
#define RemoveEntryList(Entry)
GLuint GLuint GLsizei count
GLdouble GLdouble GLdouble GLdouble q
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
#define memcpy(s1, s2, n)
static unsigned __int64 next
ssize_t receive_packet(struct interface_info *ip, unsigned char *packet_data, size_t packet_len, struct sockaddr_in *dest, struct hardware *hardware)
DWORD WINAPI WaitForMultipleObjects(IN DWORD nCount, IN CONST HANDLE *lpHandles, IN BOOL bWaitAll, IN DWORD dwMilliseconds)
WINSOCK_API_LINKAGE WSAEVENT WSAAPI WSACreateEvent(void)
#define WSA_INVALID_EVENT
int PASCAL FAR WSAGetLastError(void)