(path_conv): Add normalized_path field.
* path.cc (path_conv::~path_conv): New destructor.
(path_conv::check): Set normalized_path, where appropriate.
* dtable.cc (build_fhandler_from_name): Use normalized path from path_conv.
* syscalls.cc (chroot): Ditto.
* cygheap.h: Remove path_prefix_p declaration. Christopher Faylor
<cgf@redhat.com> (minor fixups)
* Makefile.in: Add fhandler_proc.o, fhandler_registry.o, fhandler_process.o and
fhandler_virtual.o.
* dtable.cc (dtable::build_fhandler): Add entries for FH_PROC, FH_REGISTRY and
FH_PROCESS. Set unix_name to the normalized posix path.
* fhandler.h: Add constants for FH_PROC, FH_REGISTRY and FH_PROCESS. Add class
declarations for fhandler_virtual, fhandler_proc, fhandler_registry and
fhandler_virtual. Update fhandler_union accordingly.
* fhandler_proc.cc: New file. Add implementation for fhandler_proc.
* fhandler_virtual.cc: New file. Add implementation for fhandler_virtual.
* fhandler_process.cc: New file. Add implementation for fhandler_process.
* fhandler_registry.cc: New file. Add implementation for fhandler_registry.
* path.cc: Add isproc and isvirtual_dev macros.
* path.cc (path_conv::check): Add check for virtual devices.
* path.cc (mount_info::conv_to_win32_path): Convert paths in /proc to empty
Win32 paths.
* path.cc (chdir): Replace check for FH_CYGDRIVE with more generic
isvirtual_dev macro. Force setting of posix path for virtual fhandlers.
* path.h: Add externally visible path_prefix_p and normalized_posix_path
prototypes.
* mkpasswd.c (main): Ditto.
* mkpasswd.c (usage): Simplify usage output. Generalize to allow use
for help. Correct '?' typo to 'h'.
(longopts): Add version option.
(opts): Add 'v' version option.
(print_version): New function.
(main): Accommodate new version option. Accommodate usage parameter
changes.
(_tsearchenv): Likewise.
(_tmakepath): Likewise.
(_tsplitpath): Likewise.
(_tfullpath): Likewise.
(__TEXT): Make same as define in w32api/include/winnt.h.
(_tsearchenv): Likewise.
(_tmakepath): Likewise.
(_tsplitpath): Likewise.
(_tfullpath): Likewise.
(__TEXT): Make same as define in w32api/include/winnt.h.
(socketpair): Set socket type for both sockets.
From Egor Duda <deo@logos-m.ru>:
* fhandler.h (class fhandler_socket): New member to store socket type.
(fhandler_socket::get_socket_type): Access it.
(fhandler_socket::set_socket_type): Ditto.
* net.cc (cygwin_socket): Store socket type.
(cygwin_connect): Disable security checks for connectionless sockets.
(cygwin_accept): Ditto.
for help. Correct '?' typo to 'h'.
(longopts): Add version option.
(opts): Add 'v' version option.
(print_version): New function.
(main): Accommodate new version option. Accommodate usage parameter
changes. Use usage to output help message.