Data update
This commit is contained in:
parent
8e4e15fa56
commit
72eb4943cb
1853 changed files with 35514 additions and 9441 deletions
|
|
@ -0,0 +1,64 @@
|
|||
#ifdef __FB_WIN32__
|
||||
#include once "win/winsock2.bi"
|
||||
Declare Function fbsocket Alias "socket" (af As Long, Type As Long, protocol As Long) As SOCKET
|
||||
#else
|
||||
#include once "sys/socket.bi"
|
||||
#include once "netinet/in.bi"
|
||||
#include once "arpa/inet.bi"
|
||||
#include once "netdb.bi"
|
||||
Declare Function fbsocket Alias "socket" (af As Long, Type As Long, protocol As Long) As Long
|
||||
#endif
|
||||
|
||||
Function main() As Integer
|
||||
#ifdef __fb_win32__
|
||||
Dim As WSADATA wsaData
|
||||
WSAStartup(MAKEWORD(2, 2), @wsaData)
|
||||
#endif
|
||||
|
||||
' Create socket
|
||||
Dim As Long sock = fbsocket(AF_INET, SOCK_STREAM, 0)
|
||||
|
||||
' Get host info
|
||||
Dim As hostent Ptr host = gethostbyname("www.example.com")
|
||||
|
||||
' Set up address structure
|
||||
Dim As sockaddr_in addr
|
||||
addr.sin_family = AF_INET
|
||||
addr.sin_port = htons(443)
|
||||
addr.sin_addr = *Cast(in_addr Ptr, host->h_addr)
|
||||
|
||||
' Connect
|
||||
connect(sock, Cast(sockaddr Ptr, @addr), Sizeof(sockaddr_in))
|
||||
|
||||
' Send request
|
||||
Dim As String request = "GET / HTTP/1.1" & Chr(13, 10) & _
|
||||
"Host: www.example.com" & Chr(13, 10) & _
|
||||
Chr(13, 10)
|
||||
send(sock, request, Len(request), 0)
|
||||
|
||||
' Receive response
|
||||
Dim As String response
|
||||
Dim As String buffer = Space(4096)
|
||||
Dim As Integer bytes
|
||||
|
||||
Do
|
||||
bytes = recv(sock, buffer, 4096, 0)
|
||||
If bytes > 0 Then response &= Left(buffer, bytes)
|
||||
Loop While bytes > 0
|
||||
|
||||
Print response
|
||||
|
||||
' Cleanup
|
||||
#ifdef __fb_win32__
|
||||
closesocket(sock)
|
||||
WSACleanup()
|
||||
#Else
|
||||
Close(sock)
|
||||
#endif
|
||||
|
||||
Return 0
|
||||
End Function
|
||||
|
||||
main()
|
||||
|
||||
Sleep
|
||||
Loading…
Add table
Add a link
Reference in a new issue