0,0 → 1,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' |