summaryrefslogtreecommitdiff
path: root/src/htsbasenet.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/htsbasenet.h')
-rw-r--r--src/htsbasenet.h80
1 files changed, 75 insertions, 5 deletions
diff --git a/src/htsbasenet.h b/src/htsbasenet.h
index f2a6c53..26f1392 100644
--- a/src/htsbasenet.h
+++ b/src/htsbasenet.h
@@ -31,14 +31,14 @@ Please visit our Website: http://www.httrack.com
/* ------------------------------------------------------------ */
/* File: Basic net definitions */
-/* Used in .c and .h files that needs T_SOC and so */
+/* Used in .c and .h files that needs hostent and so */
/* Author: Xavier Roche */
/* ------------------------------------------------------------ */
#ifndef HTS_DEFBASENETH
#define HTS_DEFBASENETH
-#if HTS_WIN
+#ifdef _WIN32
#if HTS_INET6==0
#include <winsock2.h>
@@ -57,13 +57,11 @@ Please visit our Website: http://www.httrack.com
#endif
-typedef SOCKET T_SOC;
- typedef struct hostent FAR t_hostent;
+typedef struct hostent FAR t_hostent;
#else
#define HTS_USESCOPEID
#define INVALID_SOCKET -1
- typedef int T_SOC;
typedef struct hostent t_hostent;
#endif
@@ -178,4 +176,76 @@ extern SSL_CTX *openssl_ctx;
#endif
#endif
+/** RFC2616 status-codes ('statuscode' member of htsblk) **/
+typedef enum HTTPStatusCode {
+ HTTP_CONTINUE = 100,
+ HTTP_SWITCHING_PROTOCOLS = 101,
+ HTTP_OK = 200,
+ HTTP_CREATED = 201,
+ HTTP_ACCEPTED = 202,
+ HTTP_NON_AUTHORITATIVE_INFORMATION = 203,
+ HTTP_NO_CONTENT = 204,
+ HTTP_RESET_CONTENT = 205,
+ HTTP_PARTIAL_CONTENT = 206,
+ HTTP_MULTIPLE_CHOICES = 300,
+ HTTP_MOVED_PERMANENTLY = 301,
+ HTTP_FOUND = 302,
+ HTTP_SEE_OTHER = 303,
+ HTTP_NOT_MODIFIED = 304,
+ HTTP_USE_PROXY = 305,
+ HTTP_TEMPORARY_REDIRECT = 307,
+ HTTP_BAD_REQUEST = 400,
+ HTTP_UNAUTHORIZED = 401,
+ HTTP_PAYMENT_REQUIRED = 402,
+ HTTP_FORBIDDEN = 403,
+ HTTP_NOT_FOUND = 404,
+ HTTP_METHOD_NOT_ALLOWED = 405,
+ HTTP_NOT_ACCEPTABLE = 406,
+ HTTP_PROXY_AUTHENTICATION_REQUIRED = 407,
+ HTTP_REQUEST_TIME_OUT = 408,
+ HTTP_CONFLICT = 409,
+ HTTP_GONE = 410,
+ HTTP_LENGTH_REQUIRED = 411,
+ HTTP_PRECONDITION_FAILED = 412,
+ HTTP_REQUEST_ENTITY_TOO_LARGE = 413,
+ HTTP_REQUEST_URI_TOO_LARGE = 414,
+ HTTP_UNSUPPORTED_MEDIA_TYPE = 415,
+ HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
+ HTTP_EXPECTATION_FAILED = 417,
+ HTTP_INTERNAL_SERVER_ERROR = 500,
+ HTTP_NOT_IMPLEMENTED = 501,
+ HTTP_BAD_GATEWAY = 502,
+ HTTP_SERVICE_UNAVAILABLE = 503,
+ HTTP_GATEWAY_TIME_OUT = 504,
+ HTTP_HTTP_VERSION_NOT_SUPPORTED = 505
+} HTTPStatusCode;
+
+/** Internal HTTrack status-codes ('statuscode' member of htsblk) **/
+typedef enum BackStatusCode {
+ STATUSCODE_INVALID = -1,
+ STATUSCODE_TIMEOUT = -2,
+ STATUSCODE_SLOW = -3,
+ STATUSCODE_CONNERROR = -4,
+ STATUSCODE_NON_FATAL = -5,
+ STATUSCODE_SSL_HANDSHAKE = -6,
+ STATUSCODE_TOO_BIG = -7,
+ STATUSCODE_TEST_OK = -10
+} BackStatusCode;
+
+/** HTTrack status ('status' member of of 'lien_back') **/
+typedef enum HTTrackStatus {
+ STATUS_ALIVE = -103,
+ STATUS_FREE = -1,
+ STATUS_READY = 0,
+ STATUS_TRANSFER = 1,
+ STATUS_CHUNK_CR = 97,
+ STATUS_CHUNK_WAIT = 98,
+ STATUS_WAIT_HEADERS = 99,
+ STATUS_CONNECTING = 100,
+ STATUS_WAIT_DNS = 101,
+ STATUS_SSL_WAIT_HANDSHAKE = 102,
+ STATUS_FTP_TRANSFER = 1000,
+ STATUS_FTP_READY = 1001
+} HTTrackStatus;
+
#endif