wireshark/epan
Guy Harris 1f8999bb96 Redo the block options APIs.
A block can have zero or more instances of a given option.  We
distinguish between "one instance only" options, where a block can have
zero or one instance, and "multiple instances allowed" options, where a
block can have zero or more instances.

For "one instance only" options:

	"add" routines add an instance if there isn't one already
	and fail if there is;

	"set" routines add an instance if there isn't one already
	and change the value of the existing instance if there is one;

	"set nth" routines fail;

	"get" routines return the value of the instance if there is one
	and fail if there isn't;

	"get nth" routines fail.

For "multiple instances allowed" options:

	"add" routines add an instance;

	"set" routines fail;

	"set nth" routines set the value of the nth instance if there is
	one and fail otherwise;

	"get" routines fail;

	"get nth" routines get the value if the nth instance if there is
	one and fail otherwise.

Rename "optionblock" to just "block"; it describes the contents of a
block, including both mandatory items and options.

Add some support for NRB options, including IPv4 and IPv6 option types.

Change-Id: Iad184f668626c3d1498b2ed00c7f1672e4abf52e
Reviewed-on: https://code.wireshark.org/review/16444
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-07-14 23:02:39 +00:00
..
compress
crypt
dfilter
dissectors IPv6: Fix jumbo payload length offset 2016-07-14 17:48:33 +00:00
ftypes
nghttp2
wmem
wslua Redo the block options APIs. 2016-07-14 23:02:39 +00:00
.editorconfig
CMakeLists.txt
Makefile.am
addr_and_mask.c
addr_and_mask.h
addr_resolv.c
addr_resolv.h
address.h
address_types.c
address_types.h
afn.c
afn.h
aftypes.c
aftypes.h
app_mem_usage.c
app_mem_usage.h
arcnet_pids.h
arptypes.h
asm_utils.c
asm_utils.h
asm_utils_win32_x86.asm
asn1.c
asn1.h
ax25_pids.h
bridged_pids.h
capture_dissectors.c
capture_dissectors.h
charsets.c
charsets.h
chdlctypes.h
circuit.c
circuit.h
color_filters.c
color_filters.h
column-info.h
column-utils.c Speed up col_append_ports on Windows. 2016-07-13 22:23:05 +00:00
column-utils.h
column.c
column.h
conv_id.h
conversation.c
conversation.h
conversation_debug.h
conversation_table.c
conversation_table.h
crc6-tvb.c
crc6-tvb.h
crc8-tvb.c
crc8-tvb.h
crc10-tvb.c
crc10-tvb.h
crc16-tvb.c
crc16-tvb.h
crc32-tvb.c
crc32-tvb.h
decode_as.c
decode_as.h
diam_dict.h
diam_dict.l
disabled_protos.c
disabled_protos.h
dissector_filters.c
dissector_filters.h
doxygen.cfg.in
dtd.h
dtd_grammar.lemon
dtd_parse.h
dtd_parse.l
dtd_preparse.l
dvb_chartbl.c
dvb_chartbl.h
dwarf.c
dwarf.h
eap.h
eapol_keydes_types.h
enterprise-numbers [Automatic update for 2016-07-10] 2016-07-10 15:08:38 +00:00
epan-int.h
epan.c
epan.h
epan_dissect.h
etypes.h Adding 802.1BR E-Tag dissector 2016-07-13 21:58:38 +00:00
ex-opt.c
ex-opt.h
except.c
except.h
exceptions.h
exntest.c
expert.c
expert.h
exported_pdu.c
exported_pdu.h
filter_expressions.c
filter_expressions.h
follow.c
follow.h
frame_data.c
frame_data.h
frame_data_sequence.c
frame_data_sequence.h
funnel.c
funnel.h
g_int64_hash_routines.c
g_int64_hash_routines.h
garrayfix.h
geoip_db.c
geoip_db.h
golay.c
golay.h
guid-utils.c
guid-utils.h
iana_charsets.c
iana_charsets.h
iax2_codec_type.h
in_cksum.c
in_cksum.h
ip_opts.h
ipproto.c
ipproto.h
ipv4.c
ipv4.h
ipv6.h
lapd_sapi.h
llcsaps.h
next_tvb.c
next_tvb.h
nlpid.h
oids.c
oids.h
oids_test.c
osi-utils.c
osi-utils.h
oui.c
oui.h
packet-range.c
packet-range.h
packet.c Handle dissectors that don't have names. 2016-07-12 18:26:24 +00:00
packet.h
packet_info.h
params.h
plugin_if.c
plugin_if.h
ppptypes.h
prefs-int.h
prefs.c
prefs.h
print.c Restore setting data.edt in write_specified_fields(). 2016-07-13 15:02:08 +00:00
print.h
print.ps
print_stream.c
print_stream.h
proto.c proto.c: Unsigned fields should use %u within printf. 2016-07-14 10:51:46 +00:00
proto.h
proto_data.c
proto_data.h
ps.h
ptvcursor.h
radius_dict.l
range.c
range.h
reassemble.c
reassemble.h
reassemble_test.c
reedsolomon.c
reedsolomon.h
req_resp_hdrs.c
req_resp_hdrs.h
rtd_table.c
rtd_table.h
rtp_pt.h
sctpppids.h
show_exception.c
show_exception.h
slow_protocol_subtypes.h
sminmpec.c [Automatic update for 2016-07-10] 2016-07-10 15:08:38 +00:00
sminmpec.h
srt_table.c
srt_table.h
stat_groups.h
stat_tap_ui.c
stat_tap_ui.h
stats_tree.c
stats_tree.h
stats_tree_priv.h
stream.c
stream.h
strutil.c
strutil.h
t35.c
t35.h
tap-voip.h
tap.c
tap.h
tfs.c
tfs.h
time_fmt.h
timestamp.c
timestamp.h
timestats.c
timestats.h
to_str-int.h
to_str.c
to_str.h
tpg.c
tpg.h
tvbparse.c
tvbparse.h
tvbtest.c
tvbuff-int.h
tvbuff.c
tvbuff.h
tvbuff_base64.c
tvbuff_composite.c
tvbuff_real.c
tvbuff_subset.c
tvbuff_zlib.c
uat-int.h
uat.c
uat.h
uat_load.l
value_string.c Fix value_string_ext_free() constness 2016-07-08 20:01:02 +00:00
value_string.h Fix value_string_ext_free() constness 2016-07-08 20:01:02 +00:00
x264_prt_id.h
xdlc.c
xdlc.h