/****************************************************************************** * Copyright (c) 2004, 2008 IBM Corporation * All rights reserved. * This program and the accompanying materials * are made available under the terms of the BSD License * which accompanies this distribution, and is available at * http://www.opensource.org/licenses/bsd-license.php * * Contributors: * IBM Corporation - initial implementation *****************************************************************************/ #ifndef _SOCKET_H #define _SOCKET_H #include #define AF_PACKET 0 #define AF_INET 1 #define AF_INET6 2 #define SOCK_RAW 0 #define SOCK_PACKET 1 #define SOCK_DGRAM 2 #define SOCK_STREAM 3 #define INADDR_ANY 0xFFFFFFFF #define IPPROTO_UDP 1 #define ETH_ALEN 6 /**< HW address length */ struct sockaddr { uint16_t tra_port; uint16_t ipv4_proto; uint32_t ipv4_addr; // protocol field is only used by "connect"-handler uint16_t llc_proto; uint8_t mac_addr[ETH_ALEN]; }; int socket(int, int, int, char *); int sendto(int, const void *, int, int, const void *, int); int send(int, const void *, int, int); int recv(int, void *, int, int); #define htonl(x) x #define htons(x) x #endif