getopt(3): clarify GNU instead of NetBSD.

The manpage and the code for r267745 came from NetBSD but the
option is inspired on GNU.

Reported by:	Ben Kaduk
MFC after:	3 days
units(1): add long options
	Things brings additional compatibility with units 2.10

Discussed with:	wblock (man page)
units(1): Fix man page
	Igor walks one way.  I walked the other.

Reported by:	wblock
units(1): Add 'help' flag
	- Add support for --help for compatibility
	- Make usage() static
minor perf enhancement for UTF-8

Reduce some duplicate code.

Reference:
https://www.illumos.org/issues/628

Obtained from:	Illumos
MFC after:	1 week
The new NFSv3 server did not generate directory postop attributes for
the reply to ReaddirPlus when the server failed within the loop
that calls VFS_VGET(). This failure is most likely an error
return from VFS_VGET() caused by a bogus d_fileno that was
truncated to 32bits.
This patch fixes the server so that it will return directory postop
attributes for the failure. It does not fix the underlying issue caused
by d_fileno being uint32_t when a file system like ZFS generates
a fileno that is greater than 32bits.

Reported by:	jpaetzel
Reviewed by:	jpaetzel
MFC after:	1 month
Use proper links field for ports linking.
Create separate iSCSI port for every target (and potentially portal group).
Burry devid port method, which was a gross hack.

Instead allow ports to provide wanted target port and target IDs, and
LUNs provide wanted LUN IDs.  After that core Device ID VPD code only
had to link them together and add relative port and port group numbers.
Make REPORT TARGET PORT GROUPS to return something more sensible.

It requires more formalized LUN mapping to be exactly correct.
Add support for SCSI Ports VPD page.

Ports should also be filtered by LUN mapping.
Do not set port wwnn/wwpn directly, call ctl_port_set_wwns() to update
also target_devid/port_devid respectively.
Change ctl_add_initiator()/ctl_remove_initiator() KPI.

 - Store data in struct ctl_port to make it dynamic;
 - Make ctl_add_initiator() to choose free iid if caller passed < 0;
 - Remove unneeded now pool of iids from iSCSI.
Add support for READ FULL STATUS action of PERSISTENT RESERVE IN.

So far without initiator IDs.
Pass through iSCSI session ISID from LOGIN request to the CTL frontend.

ISID is an important part of initiator transport ID for iSCSI.
Add initiator transport IDs to READ FULL STATUS.

This is a hack. Should be rewritten somehow to store full IDs, but still
not consume 512KB of RAM per target.