65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
/* minires.h.  Stub synchronous resolver for Cygwin.
 | 
						|
 | 
						|
   Written by Pierre A. Humblet <Pierre.Humblet@ieee.org>
 | 
						|
 | 
						|
This file is part of Cygwin.
 | 
						|
 | 
						|
This software is a copyrighted work licensed under the terms of the
 | 
						|
Cygwin license.  Please consult the file "CYGWIN_LICENSE" for
 | 
						|
details. */
 | 
						|
 | 
						|
#include "winsup.h"
 | 
						|
#include <string.h>
 | 
						|
#include <malloc.h>
 | 
						|
#include <stdlib.h>
 | 
						|
#include <ctype.h>
 | 
						|
#include <sys/time.h>
 | 
						|
#include <sys/socket.h>
 | 
						|
#include <netinet/in.h>
 | 
						|
#include <arpa/inet.h>
 | 
						|
#include <errno.h>
 | 
						|
#include <fcntl.h>
 | 
						|
#include <stdio.h>
 | 
						|
#include <stdarg.h>
 | 
						|
#include <sys/unistd.h>
 | 
						|
#define  __INSIDE_CYGWIN_NET__
 | 
						|
#include <netdb.h>
 | 
						|
#include <arpa/nameser.h>
 | 
						|
#include <resolv.h>
 | 
						|
 | 
						|
extern in_addr_t cygwin_inet_addr (const char *);
 | 
						|
extern int cygwin_socket (int, int, int);
 | 
						|
extern int cygwin_bind (int, const struct sockaddr *, socklen_t);
 | 
						|
extern int cygwin_connect (int, const struct sockaddr *, socklen_t);
 | 
						|
extern int cygwin_select (int, fd_set *, fd_set *, fd_set *, struct timeval *);
 | 
						|
extern int cygwin_sendto (int, const void *, size_t, int,
 | 
						|
			  const struct sockaddr *, socklen_t);
 | 
						|
extern int cygwin_recvfrom (int, void *, size_t, int, struct sockaddr *,
 | 
						|
			    socklen_t *);
 | 
						|
 | 
						|
/* Number of elements is an array */
 | 
						|
#define DIM(x) (sizeof(x) / sizeof(*(x)))
 | 
						|
 | 
						|
/* Definitions to parse the messages */
 | 
						|
#define RD (1<<8) /* Offset in a short */
 | 
						|
#define RA (1<<7)
 | 
						|
#define QR (1<<7) /* Offsets in a char */
 | 
						|
#define TC (1<<1)
 | 
						|
#define ERR_MASK 0xF
 | 
						|
 | 
						|
/* Type for os specific res_lookup */
 | 
						|
typedef int (os_query_t) (res_state, const char *, int, int, u_char *, int);
 | 
						|
 | 
						|
/* Special use of state elements */
 | 
						|
#define sockfd _vcsock
 | 
						|
#define mypid _flags
 | 
						|
#define os_query qhook
 | 
						|
#define use_os pfcode
 | 
						|
 | 
						|
#define DPRINTF(cond, format...)  if (cond) minires_dprintf(format)
 | 
						|
 | 
						|
/* Utility functions */
 | 
						|
void minires_dprintf(const char * format, ...);
 | 
						|
void minires_get_search(char * string, res_state statp);
 | 
						|
void get_dns_info(res_state statp);
 |