#ifndef _FCE_API_INTERNAL_H\r
#define _FCE_API_INTERNAL_H\r
\r
-#define FCE_FILE_MODIFY 1\r
-#define FCE_FILE_DELETE 2\r
-#define FCE_DIR_DELETE 3\r
-#define FCE_FILE_CREATE 4\r
-#define FCE_DIR_CREATE 5\r
-#define FCE_CONN_START 42\r
-#define FCE_CONN_BROKEN 99\r
-\r
-\r
-#define FCE_MAX_PATH_LEN 1024\r
-\r
#define FCE_MAX_UDP_SOCKS 5 /* Allow a maximum of udp listeners for file change events */\r
-#define FCE_MAX_IP_LEN 255 /* Man len of listener name */\r
#define FCE_SOCKET_RETRY_DELAY_S 600 /* Pause this time in s after socket was broken */\r
#define FCE_PACKET_VERSION 1\r
-\r
-\r
-#define FCE_PACKET_MAGIC "at_fcapi" /* Must fit to size of fce_packet.fce_magic */\r
-\r
#define FCE_HISTORY_LEN 10 /* This is used to coalesce events */\r
#define MAX_COALESCE_TIME_MS 1000 /* Events oldeer than this are not coalesced */\r
\r
struct udp_entry\r
{\r
int sock;\r
- char ip[FCE_MAX_IP_LEN];\r
- int port;\r
- struct sockaddr_in addr;\r
+ char *addr;\r
+ char *port;\r
+ struct addrinfo addrinfo;\r
+ struct sockaddr_storage sockaddr;\r
time_t next_try_on_error; /* In case of error set next timestamp to retry */\r
};\r
\r
-/* This packet goes over the network, so we want to\r
- * be shure about datastructs and type sizes between platforms\r
- */\r
-struct fce_packet\r
-{\r
- char magic[8];\r
- unsigned char version;\r
- unsigned char mode;\r
- uint16_t len; /* network byte order */\r
- uint32_t event_id; /* network byte order */\r
- char data[FCE_MAX_PATH_LEN];\r
-};\r
-\r
struct fce_history\r
{\r
unsigned char mode;\r
int is_dir;\r
- char path[FCE_MAX_PATH_LEN + 1];\r
+ char path[MAXPATHLEN + 1];\r
struct timeval tv;\r
};\r
\r
-\r
#define PACKET_HDR_LEN (sizeof(struct fce_packet) - FCE_MAX_PATH_LEN)\r
\r
int fce_handle_coalescation( char *path, int is_dir, int mode );\r