mirror of
https://git.FreeBSD.org/src.git
synced 2024-10-19 02:29:40 +00:00
Improve convergence of bpf_filter.c toward style(9).
MFC after: 3 weeks Submitted by: csjp
This commit is contained in:
parent
662cb04c25
commit
23a0c23034
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=177003
@ -84,14 +84,11 @@ 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);
|
||||
|
||||
static u_int32_t
|
||||
m_xword(m, k, err)
|
||||
register struct mbuf *m;
|
||||
register bpf_u_int32 k;
|
||||
register int *err;
|
||||
m_xword(struct mbuf *m, bpf_u_int32 k, int *err)
|
||||
{
|
||||
register size_t len;
|
||||
register u_char *cp, *np;
|
||||
register struct mbuf *m0;
|
||||
size_t len;
|
||||
u_char *cp, *np;
|
||||
struct mbuf *m0;
|
||||
|
||||
len = m->m_len;
|
||||
while (k >= len) {
|
||||
@ -112,7 +109,6 @@ m_xword(m, k, err)
|
||||
*err = 0;
|
||||
np = mtod(m0, u_char *);
|
||||
switch (len - k) {
|
||||
|
||||
case 1:
|
||||
return
|
||||
((u_int32_t)cp[0] << 24) |
|
||||
@ -136,18 +132,15 @@ m_xword(m, k, err)
|
||||
}
|
||||
bad:
|
||||
*err = 1;
|
||||
return 0;
|
||||
return (0);
|
||||
}
|
||||
|
||||
static u_int16_t
|
||||
m_xhalf(m, k, err)
|
||||
register struct mbuf *m;
|
||||
register bpf_u_int32 k;
|
||||
register int *err;
|
||||
m_xhalf(struct mbuf *m, bpf_u_int32 k, int *err)
|
||||
{
|
||||
register size_t len;
|
||||
register u_char *cp;
|
||||
register struct mbuf *m0;
|
||||
size_t len;
|
||||
u_char *cp;
|
||||
struct mbuf *m0;
|
||||
|
||||
len = m->m_len;
|
||||
while (k >= len) {
|
||||
@ -160,16 +153,16 @@ m_xhalf(m, k, err)
|
||||
cp = mtod(m, u_char *) + k;
|
||||
if (len - k >= 2) {
|
||||
*err = 0;
|
||||
return EXTRACT_SHORT(cp);
|
||||
return (EXTRACT_SHORT(cp));
|
||||
}
|
||||
m0 = m->m_next;
|
||||
if (m0 == 0)
|
||||
goto bad;
|
||||
*err = 0;
|
||||
return (cp[0] << 8) | mtod(m0, u_char *)[0];
|
||||
return ((cp[0] << 8) | mtod(m0, u_char *)[0]);
|
||||
bad:
|
||||
*err = 1;
|
||||
return 0;
|
||||
return (0);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -179,38 +172,34 @@ m_xhalf(m, k, err)
|
||||
* buflen is the amount of data present
|
||||
*/
|
||||
u_int
|
||||
bpf_filter(pc, p, wirelen, buflen)
|
||||
register const struct bpf_insn *pc;
|
||||
register u_char *p;
|
||||
u_int wirelen;
|
||||
register u_int buflen;
|
||||
bpf_filter(const struct bpf_insn *pc, u_char *p, u_int wirelen, u_int buflen)
|
||||
{
|
||||
register u_int32_t A = 0, X = 0;
|
||||
register bpf_u_int32 k;
|
||||
u_int32_t A = 0, X = 0;
|
||||
bpf_u_int32 k;
|
||||
u_int32_t mem[BPF_MEMWORDS];
|
||||
|
||||
if (pc == 0)
|
||||
if (pc == NULL)
|
||||
/*
|
||||
* No filter means accept all.
|
||||
*/
|
||||
return (u_int)-1;
|
||||
return ((u_int)-1);
|
||||
|
||||
--pc;
|
||||
while (1) {
|
||||
++pc;
|
||||
switch (pc->code) {
|
||||
|
||||
default:
|
||||
#ifdef _KERNEL
|
||||
return 0;
|
||||
#else
|
||||
abort();
|
||||
#endif
|
||||
|
||||
case BPF_RET|BPF_K:
|
||||
return (u_int)pc->k;
|
||||
return ((u_int)pc->k);
|
||||
|
||||
case BPF_RET|BPF_A:
|
||||
return (u_int)A;
|
||||
return ((u_int)A);
|
||||
|
||||
case BPF_LD|BPF_W|BPF_ABS:
|
||||
k = pc->k;
|
||||
@ -225,7 +214,7 @@ bpf_filter(pc, p, wirelen, buflen)
|
||||
return 0;
|
||||
continue;
|
||||
#else
|
||||
return 0;
|
||||
return (0);
|
||||
#endif
|
||||
}
|
||||
#ifdef BPF_ALIGN
|
||||
@ -257,7 +246,7 @@ bpf_filter(pc, p, wirelen, buflen)
|
||||
k = pc->k;
|
||||
if (k >= buflen) {
|
||||
#ifdef _KERNEL
|
||||
register struct mbuf *m;
|
||||
struct mbuf *m;
|
||||
|
||||
if (buflen != 0)
|
||||
return 0;
|
||||
@ -288,13 +277,13 @@ bpf_filter(pc, p, wirelen, buflen)
|
||||
int merr;
|
||||
|
||||
if (buflen != 0)
|
||||
return 0;
|
||||
return (0);
|
||||
A = m_xword((struct mbuf *)p, k, &merr);
|
||||
if (merr != 0)
|
||||
return 0;
|
||||
return (0);
|
||||
continue;
|
||||
#else
|
||||
return 0;
|
||||
return (0);
|
||||
#endif
|
||||
}
|
||||
#ifdef BPF_ALIGN
|
||||
@ -316,10 +305,10 @@ bpf_filter(pc, p, wirelen, buflen)
|
||||
return 0;
|
||||
A = m_xhalf((struct mbuf *)p, k, &merr);
|
||||
if (merr != 0)
|
||||
return 0;
|
||||
return (0);
|
||||
continue;
|
||||
#else
|
||||
return 0;
|
||||
return (0);
|
||||
#endif
|
||||
}
|
||||
A = EXTRACT_SHORT(&p[k]);
|
||||
@ -329,7 +318,7 @@ bpf_filter(pc, p, wirelen, buflen)
|
||||
k = X + pc->k;
|
||||
if (pc->k >= buflen || X >= buflen - pc->k) {
|
||||
#ifdef _KERNEL
|
||||
register struct mbuf *m;
|
||||
struct mbuf *m;
|
||||
|
||||
if (buflen != 0)
|
||||
return 0;
|
||||
@ -338,7 +327,7 @@ bpf_filter(pc, p, wirelen, buflen)
|
||||
A = mtod(m, u_char *)[k];
|
||||
continue;
|
||||
#else
|
||||
return 0;
|
||||
return (0);
|
||||
#endif
|
||||
}
|
||||
A = p[k];
|
||||
|
Loading…
Reference in New Issue
Block a user