summaryrefslogtreecommitdiffstats
path: root/ipsend/hpux.c
diff options
context:
space:
mode:
Diffstat (limited to 'ipsend/hpux.c')
-rw-r--r--ipsend/hpux.c112
1 files changed, 112 insertions, 0 deletions
diff --git a/ipsend/hpux.c b/ipsend/hpux.c
new file mode 100644
index 0000000..42078e3
--- /dev/null
+++ b/ipsend/hpux.c
@@ -0,0 +1,112 @@
+/*
+ * (C)opyright 1997-1998 Darren Reed. (from tcplog)
+ *
+ * Redistribution and use in source and binary forms are permitted
+ * provided that this notice is preserved and due credit is given
+ * to the original author and the contributors.
+ */
+#include <stdio.h>
+#include <strings.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/param.h>
+#include <sys/socket.h>
+#include <sys/file.h>
+#include <sys/ioctl.h>
+
+
+int initdevice(device, sport, tout)
+char *device;
+int sport, tout;
+{
+ int fd;
+
+ if ((fd = socket(AF_DLI, SOCK_RAW, 0)) == -1)
+ perror("socket");
+ return fd;
+}
+
+
+/*
+ * output an IP packet onto a fd opened for /dev/bpf
+ */
+int sendip(fd, pkt, len)
+int fd, len;
+char *pkt;
+{
+ if (send(fd, pkt, len, 0) == -1)
+ {
+ perror("send");
+ return -1;
+ }
+
+ return len;
+}
+
+
+char *strdup(str)
+char *str;
+{
+ char *s;
+
+ if ((s = (char *)malloc(strlen(str) + 1)))
+ return strcpy(s, str);
+ return NULL;
+}
+/*
+ * (C)opyright 1997 Darren Reed. (from tcplog)
+ *
+ * Redistribution and use in source and binary forms are permitted
+ * provided that this notice is preserved and due credit is given
+ * to the original author and the contributors.
+ */
+#include <stdio.h>
+#include <strings.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/param.h>
+#include <sys/socket.h>
+#include <sys/file.h>
+#include <sys/ioctl.h>
+
+
+int initdevice(device, sport, tout)
+char *device;
+int sport, tout;
+{
+ int fd;
+
+ if ((fd = socket(AF_DLI, SOCK_RAW, 0)) == -1)
+ perror("socket");
+ return fd;
+}
+
+
+/*
+ * output an IP packet onto a fd opened for /dev/bpf
+ */
+int sendip(fd, pkt, len)
+int fd, len;
+char *pkt;
+{
+ if (send(fd, pkt, len, 0) == -1)
+ {
+ perror("send");
+ return -1;
+ }
+
+ return len;
+}
+
+
+char *strdup(str)
+char *str;
+{
+ char *s;
+
+ if ((s = (char *)malloc(strlen(str) + 1)))
+ return strcpy(s, str);
+ return NULL;
+}
OpenPOWER on IntegriCloud