From f06f1fc3d95167ec780cb0963548f2afdd548b20 Mon Sep 17 00:00:00 2001 From: "Thomas E. Dickey" Date: Sat, 11 Jun 2011 13:06:08 -0400 Subject: snapshot of project "lynx", label v2-8-8dev_8m --- WWW/Library/Implementation/HTTCP.h | 110 +++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 WWW/Library/Implementation/HTTCP.h (limited to 'WWW/Library/Implementation/HTTCP.h') diff --git a/WWW/Library/Implementation/HTTCP.h b/WWW/Library/Implementation/HTTCP.h new file mode 100644 index 00000000..abbc956f --- /dev/null +++ b/WWW/Library/Implementation/HTTCP.h @@ -0,0 +1,110 @@ +/* /Net/dxcern/userd/timbl/hypertext/WWW/Library/src/HTTCP.html + GENERIC TCP/IP COMMUNICATION + + This module has the common code for handling TCP/IP connections etc. + + */ +#ifndef HTTCP_H +#define HTTCP_H + +#ifndef HTUTILS_H +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif +/* Produce a string for an internet address + * --------------------------------------- + * + * On exit: + * returns a pointer to a static string which must be copied if + * it is to be kept. + */ +#ifdef INET6 + extern const char *HTInetString(SockA * mysin); + +#else + extern const char *HTInetString(struct sockaddr_in *mysin); +#endif /* INET6 */ + +/* Encode INET status (as in sys/errno.h) inet_status() + * ------------------ + * + * On entry: + * where gives a description of what caused the error + * global errno gives the error number in the unix way. + * + * On return: + * returns a negative status in the unix way. + */ + extern int HTInetStatus(const char *where); + +/* Publicly accessible variables +*/ +/* extern struct sockaddr_in HTHostAddress; */ + /* The internet address of the host */ + /* Valid after call to HTHostName() */ + +/* Parse a cardinal value parse_cardinal() + * ---------------------- + * + * On entry: + * *pp points to first character to be interpreted, terminated by + * non 0..9 character. + * *pstatus points to status already valid, + * maxvalue gives the largest allowable value. + * + * On exit: + * *pp points to first unread character, + * *pstatus points to status updated iff bad + */ + + extern unsigned int HTCardinal(int *pstatus, + char **pp, + unsigned int max_value); + +/* Check whether string is a valid Internet hostname + * ------------------------------------------------- + */ + + extern BOOL valid_hostname(char *name); + +/* Resolve an internet hostname, like gethostbyname + * ------------------------------------------------ + * + * On entry, + * str points to the given host name, not numeric address, + * without colon or port number. + * + * On exit, + * returns a pointer to a struct hostent in static storage, + * or NULL in case of error or user interruption. + * + * The interface is intended to be the same as for gethostbyname(), + * but additional status is returned in lynx_nsl_status. + */ + extern int lynx_nsl_status; + + extern struct hostent *LYGetHostByName(char *str); + +/* Get Name of This Machine + * ------------------------ + * + */ + + extern const char *HTHostName(void); + + extern int HTDoConnect(const char *url, + const char *protocol, + int default_port, + int *s); + + extern int HTDoRead(int fildes, + void *buf, + unsigned nbyte); + +#ifdef __cplusplus +} +#endif +#endif /* HTTCP_H */ -- cgit 1.4.1-2-gfad0