svn commit: r243921 - projects/bpfjit/sys/net
Jung-uk Kim
jkim at FreeBSD.org
Thu Dec 6 00:13:58 UTC 2012
Author: jkim
Date: Thu Dec 6 00:13:57 2012
New Revision: 243921
URL: http://svnweb.freebsd.org/changeset/base/243921
Log:
Add m_xbyte() and make m_xhalf(), m_xword(), and m_xbyte() global. These
functions are used by bpfjit.c later. While I am here, make it compilable
again in userland (broken in r224044).
Modified:
projects/bpfjit/sys/net/bpf_filter.c
Modified: projects/bpfjit/sys/net/bpf_filter.c
==============================================================================
--- projects/bpfjit/sys/net/bpf_filter.c Thu Dec 6 00:06:15 2012 (r243920)
+++ projects/bpfjit/sys/net/bpf_filter.c Thu Dec 6 00:13:57 2012 (r243921)
@@ -66,6 +66,7 @@ __FBSDID("$FreeBSD$");
#include <sys/mbuf.h>
#else
#include <stdlib.h>
+#include <strings.h>
#endif
#include <net/bpf.h>
#ifdef _KERNEL
@@ -82,11 +83,12 @@ __FBSDID("$FreeBSD$");
} \
}
-static u_int16_t m_xhalf(struct mbuf *m, bpf_u_int32 k, int *err);
-static u_int32_t m_xword(struct mbuf *m, bpf_u_int32 k, int *err);
+uint32_t m_xhalf(const struct mbuf *, uint32_t, int *);
+uint32_t m_xword(const struct mbuf *, uint32_t, int *);
+uint32_t m_xbyte(const struct mbuf *, uint32_t, int *);
-static u_int32_t
-m_xword(struct mbuf *m, bpf_u_int32 k, int *err)
+uint32_t
+m_xword(const struct mbuf *m, uint32_t k, int *err)
{
size_t len;
u_char *cp, *np;
@@ -134,8 +136,8 @@ m_xword(struct mbuf *m, bpf_u_int32 k, i
return (0);
}
-static u_int16_t
-m_xhalf(struct mbuf *m, bpf_u_int32 k, int *err)
+uint32_t
+m_xhalf(const struct mbuf *m, uint32_t k, int *err)
{
size_t len;
u_char *cp;
@@ -163,6 +165,15 @@ m_xhalf(struct mbuf *m, bpf_u_int32 k, i
*err = 1;
return (0);
}
+
+uint32_t
+m_xbyte(const struct mbuf *m, uint32_t k, int *err)
+{
+
+ *err = 0;
+ MINDEX(m, k);
+ return (mtod(m, u_char *)[k]);
+}
#endif
/*
More information about the svn-src-projects
mailing list