aboutsummaryrefslogtreecommitdiff
path: root/libexec/bootpd/hwaddr.h
diff options
context:
space:
mode:
Diffstat (limited to 'libexec/bootpd/hwaddr.h')
-rw-r--r--libexec/bootpd/hwaddr.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/libexec/bootpd/hwaddr.h b/libexec/bootpd/hwaddr.h
new file mode 100644
index 000000000000..8381666eea49
--- /dev/null
+++ b/libexec/bootpd/hwaddr.h
@@ -0,0 +1,34 @@
+/*
+ * hwaddr.h
+ */
+
+#ifndef HWADDR_H
+#define HWADDR_H
+
+#define MAXHADDRLEN 8 /* Max hw address length in bytes */
+
+/*
+ * This structure holds information about a specific network type. The
+ * length of the network hardware address is stored in "hlen".
+ * The string pointed to by "name" is the cononical name of the network.
+ */
+struct hwinfo {
+ unsigned int hlen;
+ char *name;
+};
+
+extern struct hwinfo hwinfolist[];
+extern int hwinfocnt;
+
+extern void setarp(int, struct in_addr *, int, u_char *, int);
+extern char *haddrtoa(u_char *, int);
+extern void haddr_conv802(u_char *, u_char *, int);
+
+/*
+ * Return the length in bytes of a hardware address of the given type.
+ * Return the canonical name of the network of the given type.
+ */
+#define haddrlength(type) ((hwinfolist[(int) (type)]).hlen)
+#define netname(type) ((hwinfolist[(int) (type)]).name)
+
+#endif /* HWADDR_H */