#ifndef LHNET_H
#define LHNET_H
+#include <stddef.h>
+#include "com_list.h"
+
typedef enum lhnetaddresstype_e
{
LHNETADDRESSTYPE_NONE,
int LHNETADDRESS_FromPort(lhnetaddress_t *address, lhnetaddresstype_t addresstype, int port);
int LHNETADDRESS_FromString(lhnetaddress_t *address, const char *string, int defaultport);
+/// Returns the number of bytes written to *string excluding the \0 terminator.
int LHNETADDRESS_ToString(const lhnetaddress_t *address, char *string, int stringbuffersize, int includeport);
-int LHNETADDRESS_GetAddressType(const lhnetaddress_t *address);
+static inline lhnetaddresstype_t LHNETADDRESS_GetAddressType(const lhnetaddress_t *address)
+{
+ if (address)
+ return address->addresstype;
+ else
+ return LHNETADDRESSTYPE_NONE;
+}
const char *LHNETADDRESS_GetInterfaceName(const lhnetaddress_t *address, char *ifname, size_t ifnamelength);
int LHNETADDRESS_GetPort(const lhnetaddress_t *address);
int LHNETADDRESS_SetPort(lhnetaddress_t *address, int port);
{
lhnetaddress_t address;
int inetsocket;
- struct lhnetsocket_s *next, *prev;
+ llist_t list;
}
lhnetsocket_t;
+extern lhnetsocket_t lhnet_socketlist;
void LHNET_Init(void);
void LHNET_Shutdown(void);