Update kernel.c
[ps4-sdk.git] / libPS4 / include / network.h
blob82330fe168bc8ea3eff2dee002e97871d3e4881f
1 #pragma once
3 #include "types.h"
5 #define IP(a, b, c, d) (((a) << 0) + ((b) << 8) + ((c) << 16) + ((d) << 24))
6 #define htons(a) __builtin_bswap16(a)
8 #define AF_INET 0x0002
10 #define IN_ADDR_ANY 0
12 #define SOCK_STREAM 1
13 #define SOCK_DGRAM 2
15 #define SOL_SOCKET 0xffff
16 #define SO_NBIO 0x1200
18 #define MSG_DONTWAIT 0x80
19 #define MSG_WAITALL 0x40
21 #define IPPROTO_TCP 6
22 #define TCP_NODELAY 1
24 struct in_addr {
25 unsigned int s_addr;
28 struct sockaddr_in {
29 unsigned char sin_len;
30 unsigned char sin_family;
31 unsigned short sin_port;
32 struct in_addr sin_addr;
33 unsigned short sin_vport;
34 char sin_zero[6];
37 struct sockaddr {
38 unsigned char sin_len;
39 unsigned char sa_family;
40 char sa_data[14];
43 typedef unsigned int socklen_t;
45 extern int (*sceNetSocket)(const char *, int, int, int);
46 extern int (*sceNetSocketClose)(int);
47 extern int (*sceNetConnect)(int, struct sockaddr *, int);
48 extern int (*sceNetSend)(int, const void *, size_t, int);
49 extern int (*sceNetBind)(int, struct sockaddr *, int);
50 extern int (*sceNetListen)(int, int);
51 extern int (*sceNetAccept)(int, struct sockaddr *, unsigned int *);
52 extern int (*sceNetRecv)(int, void *, size_t, int);
53 extern int (*sceNetSocketAbort)(int , int );
55 extern int (*sceNetGetsockname)(int, struct sockaddr *, unsigned int *);
56 extern int (*sceNetGetsockopt)(int s, int level, int optname, void *restrict optval, socklen_t *restrict optlen);
57 extern int (*sceNetSetsockopt)(int s, int level, int optname, const void *optval, socklen_t optlen);
59 extern const char (*sceNetInetNtop)(int af, const void *src, char *dst, int size);
60 extern int (*sceNetInetPton)(int af, const char *src, void *dst);
62 extern uint64_t (*sceNetHtonll)(uint64_t host64);
63 extern uint32_t (*sceNetHtonl)(uint32_t host32);
64 extern uint16_t (*sceNetHtons)(uint16_t host16);
65 extern uint64_t (*sceNetNtohll)(uint64_t net64);
66 extern uint32_t (*sceNetNtohl)(uint32_t net32);
67 extern uint16_t (*sceNetNtohs)(uint16_t net16);
69 void initNetwork(void);