summaryrefslogtreecommitdiff
path: root/src/anet.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/anet.c')
-rw-r--r--src/anet.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/anet.c b/src/anet.c
index bde460fc8..3ded135b0 100644
--- a/src/anet.c
+++ b/src/anet.c
@@ -49,6 +49,8 @@
#include "anet.h"
#include "config.h"
+#define UNUSED(x) (void)(x)
+
static void anetSetError(char *err, const char *fmt, ...)
{
va_list ap;
@@ -680,3 +682,18 @@ error:
close(fds[1]);
return -1;
}
+
+int anetSetSockMarkId(char *err, int fd, uint32_t id) {
+#ifdef HAVE_SOCKOPTMARKID
+ if (setsockopt(fd, SOL_SOCKET, SOCKOPTMARKID, (void *)&id, sizeof(id)) == -1) {
+ anetSetError(err, "setsockopt: %s", strerror(errno));
+ return ANET_ERR;
+ }
+ return ANET_OK;
+#else
+ UNUSED(fd);
+ UNUSED(id);
+ anetSetError(err,"anetSetSockMarkid unsupported on this platform");
+ return ANET_OK;
+#endif
+}