#endif
#ifndef NMRPFLASH_WINDOWS
-#define _BSD_SOURCE
#include <arpa/inet.h>
#include <sys/socket.h>
#include <net/if.h>
#include <winsock2.h>
#include <iphlpapi.h>
#include <ws2tcpip.h>
+#include <windows.h>
#endif
#define NMRPD_VERSION "0.9"
int force_root;
};
-int sock_set_rx_timeout(int sock, unsigned msec);
int tftp_put(struct nmrpd_args *args);
int nmrp_do(struct nmrpd_args *args);
+int select_fd(int fd, unsigned timeout);
+const char *mac_to_str(uint8_t *mac);
+
+#ifdef NMRPFLASH_WINDOWS
+void win_perror2(const char *msg, DWORD err);
+void sock_perror(const char *msg);
+#else
+#define sock_perror(x) perror(x)
+#endif
+
+extern int verbosity;
+
+struct ethsock;
+
+struct ethsock *ethsock_create(const char *intf, uint16_t protocol);
+int ethsock_close(struct ethsock *sock);
+int ethsock_send(struct ethsock *sock, void *buf, size_t len);
+ssize_t ethsock_recv(struct ethsock *sock, void *buf, size_t len);
+int ethsock_set_timeout(struct ethsock *sock, unsigned msec);
+uint8_t *ethsock_get_hwaddr(struct ethsock *sock);
+int ethsock_list_all(void);
#endif