NUTSCAN_ADD_OPTION_TO_DEVICE(3)
===============================

NAME
----

nutscan_add_option_to_device, nutscan_add_commented_option_to_device - Add
option data to the specified device.


SYNOPSIS
--------

------
	#include <nut-scan.h>

	/* Add enabled option data to the specified device. */
	void nutscan_add_option_to_device(
		nutscan_device_t * device,
		char * option_name,
		char * value);

	/* Since libnutscan version 2.5.0:
	 * Add option data to the specified device with an optional comment tag
	 * for options suggested, but not currently enabled for actual use. */
	void nutscan_add_commented_option_to_device(
		nutscan_device_t * device,
		char * option_name,
		char * value,
		char * comment_tag);
------

DESCRIPTION
-----------

The `nutscan_device_t` contains the following variables:

	nutscan_device_type_t   type;
	char *          driver;
	char *          alt_driver_names;
	char *          port;
	nutscan_options_t       opt;
	struct nutscan_device * prev;
	struct nutscan_device * next;

This is a double linked list of devices. Each 'device' is described by
its `type`, its `driver` name, its `port` and any number of optional data.

The *nutscan_add_option_to_device()* adds an optional data in the
given 'device'. Optional data are made of an 'option_name' and an
associated 'value', and optionally a 'comment_tag'. Copies of the
'option_name', 'value' and 'comment_tag' are stored in the 'device',
so the caller can safely linkmanext:free[3] all of the original strings
used as arguments.

NOTE: A non-`NULL` value of the 'comment_tag' makes the option not-enabled
for current use. Depending on the output format, it may be either completely
ignored, or rendered as a comment with this value as a prefix (a zero-length
string `"\0"` may be passed to have no prefix).

Such options and their values may be further sanity-checked and reported
as warnings by *nutscan_display_sanity_check()* dispatcher and its related
methods which implement the logic of particular checks. This is used for
example when generating an `ups.conf` file content suggestions with
*nutscan_display_ups_conf_with_sanity_check()* method.

NOTES
-----

Technically, the function is currently defined in 'nutscan-device.h' file.

SEE ALSO
--------

linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http_range[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_sanity_check[3],
linkman:nutscan_display_sanity_check_serial[3],
linkman:nutscan_display_ups_conf_with_sanity_check[3],
linkman:nutscan_display_ups_conf[3], linkman:nutscan_display_parsable[3],
linkman:nutscan_new_device[3], linkman:nutscan_free_device[3],
linkman:nutscan_add_device_to_device[3]
