1145519Sdarrenr/*	$FreeBSD$	*/
2145510Sdarrenr
3145510Sdarrenr/*
4255332Scy * Copyright (C) 2012 by Darren Reed.
5145510Sdarrenr *
6145510Sdarrenr * See the IPFILTER.LICENCE file for details on licencing.
7145510Sdarrenr *
8255332Scy * $Id$
9145510Sdarrenr */
10145510Sdarrenr#include "ipf.h"
11145510Sdarrenr
12145510Sdarrenr
13145510Sdarrenr#ifdef	USE_INET6
14145510Sdarrenr
15145510Sdarrenrvoid optprintv6(sec, optmsk, optbits)
16255332Scy	u_short *sec;
17255332Scy	u_long optmsk, optbits;
18145510Sdarrenr{
19145510Sdarrenr	u_short secmsk = sec[0], secbits = sec[1];
20145510Sdarrenr	struct ipopt_names *io;
21145510Sdarrenr	char *s;
22145510Sdarrenr
23255332Scy	s = " v6hdr ";
24145510Sdarrenr	for (io = v6ionames; io->on_name; io++)
25145510Sdarrenr		if ((io->on_bit & optmsk) &&
26145510Sdarrenr		    ((io->on_bit & optmsk) == (io->on_bit & optbits))) {
27145510Sdarrenr			printf("%s%s", s, io->on_name);
28145510Sdarrenr			s = ",";
29145510Sdarrenr		}
30145510Sdarrenr
31145510Sdarrenr	if ((optmsk && (optmsk != optbits)) ||
32145510Sdarrenr	    (secmsk && (secmsk != secbits))) {
33145510Sdarrenr		s = " ";
34145510Sdarrenr		printf(" not v6hdrs");
35145510Sdarrenr		if (optmsk != optbits) {
36145510Sdarrenr			for (io = v6ionames; io->on_name; io++)
37145510Sdarrenr				if ((io->on_bit & optmsk) &&
38145510Sdarrenr				    ((io->on_bit & optmsk) !=
39145510Sdarrenr				     (io->on_bit & optbits))) {
40145510Sdarrenr					printf("%s%s", s, io->on_name);
41145510Sdarrenr					s = ",";
42145510Sdarrenr				}
43145510Sdarrenr		}
44145510Sdarrenr
45145510Sdarrenr	}
46145510Sdarrenr}
47145510Sdarrenr#endif
48