summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Cygwin: ntdll.h: Add some missing pipe-related definitionsCorinna Vinschen2018-03-061-2/+25
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: sys/socket.h: define MSG_CMSG_CLOEXECCorinna Vinschen2018-03-061-0/+3
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: export hires counter ntodCorinna Vinschen2018-03-061-0/+1
| | | | | | Needed it new AF_UNIX socket code Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* RTEMS: Use int for _CLOCKID_T_Sebastian Huber2018-03-061-0/+3
| | | | | | | | | Linux and FreeBSD use int as well. In addition, this fixes an Ada incompatiblity problem on 64-bit targets. See also GCC: gcc/ada/libgnarl/s-osinte__rtems.ads Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* Make _CLOCKID_T_ system configurableSebastian Huber2018-03-061-0/+3
| | | | | | | Let systems optionally provide the _CLOCKID_T_ type via <machine/_types.h>. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* Cygwin: move sun_name_t constructors into fhandler_socket_unix.ccCorinna Vinschen2018-03-052-12/+19
| | | | | | | | | | They are only used there anyway and it allows to use the AF_UNIX macro without tweaking header files. While at it, improve both constructors. The default constructor now creates the name of an unnamed socket, the constructor taking parameters carefully checks its input. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: sockets: add bind state, and split out connect state to allow atomic ↵Corinna Vinschen2018-03-051-4/+19
| | | | | | | | | operation The connect state was stored in a bitfield which is not safe to do atomic operations on. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: drop debug_printf statement from start_transactionCorinna Vinschen2018-03-051-4/+1
| | | | | | | start_transaction is now defined in ntdll.h and we can't rely on debug_printf being available Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: cygwait.cc: fix formatting of debug statementCorinna Vinschen2018-03-051-1/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Locale modifier @cjkwide to adjust ambiguous-width in non-CJK localesThomas Wolff2018-03-051-16/+23
| | | | | | | | | | Locale modifier @cjkwide makes Unicode "ambiguous width" characters wide. So ambiguous width characters can be enforced to have width 2 even in non-CJK locales. This gives e.g. users of "Powerline symbols" the opportunity to adjust their width to the desired behaviour (and the behaviour apparently expected by some tools) without having to set a CJK locale and without losing consistence of terminal character width with wcwidth/wcswidth locale width.
* Cygwin: AF_UNIX: drop try/except block in bind methodCorinna Vinschen2018-03-021-27/+21
| | | | | | The caller already does it anyway. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: AF_UNIX: create pipes with file attribute R/W accessCorinna Vinschen2018-03-021-2/+7
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: accept4: Fix resource leakCorinna Vinschen2018-03-022-0/+4
| | | | | | | The new implementation neglected to release the file descriptor in case of error. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: remove outdated commentCorinna Vinschen2018-03-021-1/+0
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket_unix: implement socket, bind, and closeCorinna Vinschen2018-03-022-88/+493
| | | | | | | | ...plus lots of helper functions. Add comment to explain how everything works. This comment will be improved while implementing the yet missing parts. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: add transform_chars_af_unix helperCorinna Vinschen2018-03-022-2/+13
| | | | | | | | | This function is going to be used for transposing sun_path of abstract sockets. This also adds a transposition of the NUL character to tfx_chars since NUL-bytes in abstract socket names are perfectly valid. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: small_s[w]printf: add '_' modifier to print lower case hex digitsCorinna Vinschen2018-03-021-46/+74
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: drop CYGWIN_SOCKET_UUID, define CYGWIN_SOCKET_GUID as GUID pointerCorinna Vinschen2018-03-023-6/+12
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: ntdll.h: add definitions required for pipe-based AF_UNIXCorinna Vinschen2018-03-021-1/+47
| | | | | | Also remove redundant declaration of RtlInitEmptyUnicodeString Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add global stdio streams support for reent small.Our Air Quality2018-03-013-11/+56
|
* Cygwin: convert sun_name_t into classCorinna Vinschen2018-03-012-13/+22
| | | | | | | Add constructors and new/delete operators to make sure sun_name_t objects are allocated on the cygheap. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: add AF_UNIX reparse points to path handlingCorinna Vinschen2018-03-013-8/+23
| | | | | | | | | | * check_reparse_point_target returns a path flag mask, rather than just 1. Return PATH_SYMLINK | PATH_REP for symlinks and directory mount points, PATH_SOCKET | PATH_REP for AF_UNIX sockets. * Define Cygwin AF_UNIX socket reparse tag and GUID in ntdll.h. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: move transaction helpers into ntdll.hCorinna Vinschen2018-03-012-36/+35
| | | | | | We'll need them elsewhere in future. Signed-off-by: Corinna Vinschen <corinna@vinschen.de
* Cygwin: ntdll.h: drop macros available in mingw-w64 headersCorinna Vinschen2018-03-011-8/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: path.cc: clean up includesCorinna Vinschen2018-03-011-12/+4
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: path_conv: rename is_rep_symlink to is_known_reparse_pointCorinna Vinschen2018-03-015-13/+14
| | | | | | | ...in preparation of reusing this flag for other types of reparse points, not only symlinks. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: improve storage and handling of AF_UNIX socket pathCorinna Vinschen2018-02-282-29/+77
| | | | | | Define new struct sun_name_t and use throughout internally. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket_unix: store peer credentials in ucred memberCorinna Vinschen2018-02-284-22/+30
| | | | | | | * Split out cygwin/_ucred.h file * drop local credentials Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: cleanup header including within network-releated filesCorinna Vinschen2018-02-288-116/+43
| | | | | | | | | | | * Rearrange includes and drop unneccessary ones. * Don't pull in cygwin/socket.h into sys/un.h just to get sa_family_t. Include sys/types.h and use __sa_family_t instead. * start including Windows headers using the w32api/ path prefix Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: sockets: Fix fstat on unnamed socketsCorinna Vinschen2018-02-271-1/+1
| | | | | | | Calling fhandler_socket::fstat from fhandler_socket::fstat recursively is not a good idea... Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: reduce size of fhandler_cygdrivenewlib-snapshot-20180226Corinna Vinschen2018-02-262-27/+26
| | | | | | | | | | | fhandler_cygdrive has a size of 696 bytes on x86_64, while the next biggest fhandler type, fhandler_pty_master, is 584 bytes. The members responsible for the size are private to opendir/readdir/closedir usage. fhandler_disk_file stores private readdir data in DIR->__d_internal instead. Use equivalent method with fhandler_cygdrive. This drops the size to 464 bytes. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: sockets: Add missing cleanup if socket/socketpair creation failsCorinna Vinschen2018-02-261-1/+6
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket_unix: Tiny cleanupCorinna Vinschen2018-02-261-29/+10
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: sockets: move type and proto checks into fhandler_socket classesCorinna Vinschen2018-02-264-25/+47
| | | | | | Encapsulation required Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket: define socketpair as virtual functionCorinna Vinschen2018-02-265-7/+21
| | | | | | | ...in preparation of moving the type and protocol test into the actual classes. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* doc/faq-using.xml: Add BeyondTrust and Cylance to BLODADavid Macek2018-02-231-0/+2
| | | | | | | | | | Cylance: - https://github.com/git-for-windows/git/issues/1244 - https://cygwin.com/ml/cygwin/2017-04/msg00238.html BeyondTrust: - https://cygwin.com/ml/cygwin/2017-04/msg00092.html - https://cygwin.com/ml/cygwin/2017-05/msg00422.html
* Cygwin: Define SO_PASSCRED and SCM_CREDENTIALSCorinna Vinschen2018-02-232-1/+3
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: Create empty fhandler_socket_unixCorinna Vinschen2018-02-2311-19/+832
| | | | | | | | | * Make distinct from AF_LOCAL for testing purposes. This will have to be reverted as soon as fhandler_socket_unix goes life. * Move saw_reuseaddr flag back to fhandler_socket status Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fix upcalls in some fhandler_socket_local methodsCorinna Vinschen2018-02-231-8/+7
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: Introduce FH_SOCKET for generic socket file opsCorinna Vinschen2018-02-234-3/+12
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: encapsulate Winsock based fhandler_socket classesCorinna Vinschen2018-02-238-1157/+711
| | | | | | | | | | | | | | | | | | | Insert another class fhandler_socket_wsock between fhandler_socket and fhandler_socket_inet/fhandler_socket_local. Also, add a new method fhandler::is_wsock_socket to allow asking for sockets in general (is_socket) vs. Winsock-based sockets (is_wsock_socket). This allows to develop a new handler_socket_unix class as derived class from fhandler_socket without any trace of wsock code left in fhandler_socket. While this is basically a temporary measure at this time, it may prove useful for later interoperability with the upcoming Windows 10 AF_UNIX implementation at one point. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: eliminate unused fhandler method hcloseCorinna Vinschen2018-02-231-3/+0
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fix fhandler_socket_local::fchmodCorinna Vinschen2018-02-231-1/+1
| | | | | | | Rather than just returning 0, return the result of calling the base class fchmod. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: socket.h: Add SIOCINQ, equivalent to FIONREADCorinna Vinschen2018-02-231-0/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: drop unused device nodes and clean up socket devicesCorinna Vinschen2018-02-238-49/+25
| | | | | | | | * Rename DEV_TCP_MAJOR to DEV_SOCK_MAJOR * Drop FH_TCP, FH_UDP, FH_ICMP in favor of single FH_INET * Drop FH_UNIX, FH_STREAM, FH_DGRAM in favor of single FH_LOCAL Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket: Move select functions into derived classesCorinna Vinschen2018-02-222-6/+72
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket: Rearrange methodsCorinna Vinschen2018-02-222-144/+145
| | | | | | Follow the same pattern in all fhandler_socket classes. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket: Add derived fcntl methodsCorinna Vinschen2018-02-224-14/+57
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket: Add derived ioctl methodsCorinna Vinschen2018-02-224-50/+128
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fhandler_socket: Move shutdown and close methods into derived classesCorinna Vinschen2018-02-224-90/+160
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>