summaryrefslogtreecommitdiff
path: root/frontends/kolibrios/loadhttp.asm
blob: 0a38c225e4338f0aae139d37d7fe58f531a497d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
format coff
use32                                   ; Tell compiler to use 32 bit instructions
	
section '.flat' code			; Keep this line before includes or GCC messes up call addresses

include 'struct.inc'
include 'proc32.inc'
include 'macros.inc'
purge section,mov,add,sub

include 'network.inc'
include 'http.inc'
include 'dll.inc'
	
virtual at 0
        http_msg http_msg
end virtual

public init_network as '_init_network_asm'
	
;;; Returns 0 on success. -1 on failure.

proc init_network
	
	mcall 68,11
	
	stdcall dll.Load, @IMPORT
        test    eax, eax
        jnz     error
	
	mov eax, 0
	ret
	
error:	
	mov eax, -1
	ret
endp	
	
@IMPORT:

library lib_http,               'http.obj'

import  lib_http, \
	HTTP_get                , 'get'                 , \
        HTTP_head               , 'head'                , \
        HTTP_post               , 'post'                , \
        HTTP_find_header_field  , 'find_header_field'   , \
        HTTP_send               , 'send'                , \
        HTTP_receive            , 'receive'             , \
        HTTP_disconnect         , 'disconnect'          , \
        HTTP_free               , 'free'                , \
        HTTP_escape             , 'escape'              , \
        HTTP_unescape           , 'unescape'
	
public HTTP_get as '_http_get_asm'
public HTTP_head as '_http_head_asm'
public HTTP_post as '_http_post_asm'
public HTTP_find_header_field as '_http_find_header_field_asm'
public HTTP_send as '_http_send_asm'
public HTTP_receive as '_http_receive_asm'
public HTTP_disconnect as '_http_disconnect_asm'
public HTTP_free as '_http_free_asm'
public HTTP_escape as '_http_escape_asm'
public HTTP_unescape as '_http_unescape_asm'