Since the method claims it's up to the user to ensure the field exists
before calling, the extra bounds-checking done by std::vector::at()
isn't needed.
This is a convenience method to assign a known record field value by
field name. May also be useful to reduce warnings from static analysis
(e.g. Coverity) about not checking for negative return values before
assigning since that now flows through a [[noreturn]] error path.
- Restored a deprecated version of 'supervisor_rotation_format_func'
during merge.
* origin/topic/vlad/expose_supervisor_rotation_func:
Rename supervisor_rotation_format_func to archiver_rotation_format_func, and expose it for non-supervised setups
Previously, a system-wide installation of any bundled auxil/ software
(like CAF) may get found/included rather than the bundled version and
possibly break the build.
* origin/topic/vern/cpp-prep-factoring:
test suite update due to factoring out coerce_to_record()
removal of vestigial #include's (breaking an include loop in the process)
better method name: HasCopySemantics()
Use STL functionality to initialize coercion map
comments for factored-out index slice functions
support for subclassing ScriptFunc's, esp. for alternate lambda closures
factor out record coercion; modernize management of coercion "map"
lower-level method for adding fields to records
factor out "print" statement's execution functionality
functions for indexing slices and strings
new function for getting the location, if any, associated with the current call
The change in 44f558df7b that made analyzer_list
a std::vector instead of a std::list doesn't take into account that in some
cases an analyzer may chain back into itself, such as with UDP-in-UDP tunnels.
In these cases, the second call to ForwardPacket may cause iterator
invalidation, leading to a crash.
The larger number was substracted from the smaller one leading to an
integer overflow. However, no information was lost due to everything
also being present in the notice message.
Fixes GH-1454