summaryrefslogtreecommitdiffstats
path: root/unix/tclUnixChan.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix [e770d92d76]: Add support for higher baud rates in Tcljan.nijtmans2015-06-161-0/+33
|\
| * Patch to add support for higher baud rates under Unix Ticket [e770d92d76]]ticket_e770d92d6hypnotoad2015-06-101-0/+33
| |
| * Remove a number of eol-spaces. No change in functionality.jan.nijtmans2014-11-141-4/+4
| |
| * Add test-case for previous commit, which shows that when trying to open a ↵jan.nijtmans2014-11-031-0/+5
| |\ | |/ |/| | | filename with invalid characters gives the right error-message. (same bug existed on UNIX too, which is now fixed)
| * Unix terminal and serial port I/O: retire obsolete termio and sgtty code,joe2013-03-031-314/+98
| |\ | | | | | | general cleanup. See SF [Bug 3606258] for details.
| | * ... which means struct TtyState can be replaced with struct FileState.jenglish_termios_cleanupjoe2013-03-021-51/+25
| | |
| | * Member TtyState.savedState set in TtyInit() but never subsequently used.joe2013-03-021-19/+10
| | | | | | | | | This can go away...
| | * TtyParseMode signature simplification: take single pointer to struct TtyAttrs jenglish2013-03-021-19/+12
| | | | | | | | | instead of separate pointers to each member.
| | * More ifdef shuffling: GETREADQUEUE and GETWRITEQEUE always defined,jenglish2013-03-021-6/+7
| | | | | | | | | dummy implementations return 0 if the requisite ioctls are not present.
| | * Do not use strncasecmp(). It is nonstandard and not portable.jenglish2013-03-021-7/+7
| | | | | | | | | Use Tcl_UtfNcasecmp() instead.
| | * Replace broken SC_SERIAL_PORT macro with plain AC_CHECK_HEADERS tests.jenglish2013-03-011-5/+6
| | |
| | * ifdef shuffling: TIOCMC[GS]ET ioctls are not specified by POSIX,jenglish2013-03-011-39/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so we can't assume they are present just because we HAVE_TERMIOS_H. Conversely, if they are present then the subsidiary flags TIOCM_{DTR|RTS} are almost certainly there as well, so that ifdeffery can be removed. And lastly, ifdefs for TIOCSBRK/TIOCCBRK are still needed. (Those are logically separate functions even though TIP#35 lumped them together with DTR and RTS in -ttycontrol. POSIX provides tcsendbreak() for this purpose, but that interface doesn't fit with the TIP#35 API.) KNOWN DEFECT: if a hypothetical Unix system is missing TIOCMCGET but has TIOCSBRK/TIOCCBRK, the latter function will nevertheless be unavailable. Accounting for this possibility does not strike me as being worth the ifdefs.
| | * TtyGetOptionProc: remove inoperative comment "The string returned by jenglish2013-02-281-6/+2
| | | | | | | | | | | | this function is in static storage [...]"; this is not the case (and apparently never has been)
| | * TtyGetBaud(), TtyGetSpeed(): use POSIX speed_t typedefjenglish2013-02-271-16/+8
| | | | | | | | | instead of 'unsigned long'.
| | * Remove IOSTATE facade: it's always a struct termios.jenglish2013-02-271-25/+18
| | |
| | * ifdef reduction - missed a couple spots (#if ... defined(USE_TERMIO))jenglish2013-02-271-7/+4
| | |
| | * ifdef reduction: SUPPORTS_TTY defined if and only if USE_TERMIOS defined.jenglish2013-02-271-21/+1
| | |
| | * For termios, we never want DIRECT_BAUD; always use the symbolic constantsjenglish2013-02-271-14/+0
| | | | | | | | | as prescribed by POSIX.
| | * termios cleanup step 1: remove USE_TERMIO and USE_SGTTY conditional sectionsjenglish2013-02-271-100/+1
| |/ | | | | (mechanical change, done with `unifdef`).
| * Final part of result generation conversion (modulo any minor blunders)dkf2012-08-051-35/+40
| |
| * Factor out a number of common patterns of use of Tcl_DStringAppend.dkf2012-07-031-2/+2
| |
| * get rid of _ANSI_ARGS_ and CONSTjan.nijtmans2012-04-261-1/+1
| |\
| * \ make some more internal tables constjan.nijtmans2012-04-231-1/+1
| |\ \ | | |/
| * | More generation of error codes (most platform-specific parts not already usingdkf2011-04-061-0/+21
| | | | | | | | | Tcl_PosixError).
| * | Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts indkf2011-03-121-13/+13
| | | | | | | | | rest of Tcl source code. No ABI change. API change *should* be harmless.
| * | Now that we're no longer using SCM based on RCS, the RCS Keyword linesdgp2011-03-021-2/+0
| |\ \ | | | | | | | | cause more harm than good. Purged them (except in zlib files).
| * | | * doc/socket.n: Document the changes to the [socket] and rmax2010-09-281-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [fconfiguyre] commands. * generic/tclInt.h: Introduce TclCreateSocketAddress() as a * generic/tclIOSock.c: replacement for the platform-dependent * unix/tclUnixSock.c: TclpCreateSocketAddress() functions. * unix/tclUnixChan.c: Extend the [socket] and [fconfigure] * unix/tclUnixPort.h: commands to behave as proposed in * win/tclWinSock.c: TIP #162. * win/tclWinPort.h: * compat/fake-rfc2553.c: A compat implementation of the APIs * compat/fake-rfc2553.h: defined in RFC-2553 (getaddrinfo() and friends) on top of the existing gethostbyname() etc. * unix/configure.in: Test whether the fake-implementation is * unix/tcl.m4: needed. * unix/Makefile.in: Add a compile target for fake-rfc2553. * win/configure.in: Allow cross-compilation by default * tests/socket.test: Improve the test suite to make more use of * tests/remote.tcl: randomized ports to reduce interference with tests running in parallel or other services on the machine.
| * | | Eliminate various unnecessary type casts, use function typedefs whenever ↵nijtmans2010-06-211-8/+8
| | | | | | | | | | | | | | | | possible
| * | | Fix TCL_LL_MODIFIER for Cygwinnijtmans2010-01-131-3/+3
| | | | | | | | | | | | | | | | | | | | and various other minor CYGWIN compilation problems
| * | | * win/tclWinDde.c: VC++ 6.0 doesn't havenijtmans2010-01-101-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * win/tclWinReg.c PDWORD_PTR * win/tclWinThrd.c: Fix various minor gcc warnings. * win/tclWinTime.c * win/tclWinConsole.c Put channel type definitions * win/tclWinChan.c in static const memory * win/tclWinPipe.c * win/tclWinSerial.c * win/tclWinSock.c * generic/tclIOGT.c * generic/tclIORChan.c * generic/tclIORTrans.c * unix/tclUnixChan.c * unix/tclUnixPipe.c * unix/tclUnixSock.c * unix/configure (regenerated with autoconf 2.59) * tests/info.test: Make test independant from tcltest implementation.
| * | | * unix/tclUnixChan.c (TtyParseMode): Partial undo of Donal's tidy-andreas_kupries2009-11-171-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | up from a few days ago (2009-11-9, not in ChangeLog). strchr is apparently a macro on AIX and reacts badly to pre-processor directives in its arguments.
| * | | Some small bits of tidying up.dkf2009-11-091-68/+68
| | | |
| * | | * unix/tclUnixPort.h: Move all socket-related code from tclUnixChan.crmax2009-06-151-1140/+3
| | | | | | | | | | | | | | | | | | | | * unix/tclUnixChan.c: to tclUnixSock.c. * unix/tclUnixSock.c:
| * | | Remove unused variable (compiler warning)dgp2009-04-101-2/+2
| | | |
| * | | * unix/tclUnixChan.c: TclUnixWaitForFile(): use FD_* macrosdas2009-04-101-33/+30
| | | | | | | | | | | | | | | | | | | | * macosx/tclMacOSXNotify.c: to manipulate select masks (Cassoff). [Bug 1960647]
| * | | * macosx/tclMacOSXNotify.c: revise CoreFoundation notifier to allowdas2009-04-101-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * unix/tclUnixChan.c: embedding into applications that * unix/tclUnixEvent.c: already have a CFRunLoop running and want to run the tcl event loop via Tcl_ServiceModeHook(TCL_SERVICE_ALL). * macosx/tclMacOSXNotify.c: add CFRunLoop based Tcl_Sleep() and * unix/tclUnixChan.c: TclUnixWaitForFile() implementations * unix/tclUnixEvent.c: and disable select() based ones in CoreFoundation builds. * unix/tclUnixNotify.c: simplify, sync with tclMacOSXNotify.c. * generic/tclInt.decls: add TclMacOSXNotifierAddRunLoopMode() * generic/tclIntPlatDecls.h: internal API, regen. * generic/tclStubInit.c:
| * | | TIP #332 IMPLEMENTATION - Half-Close for Bidirectional Channelsferrieux2008-12-181-2/+56
| | | |
| * | | Style improvements - invoking callbacks without visual junk.dkf2008-10-261-2/+2
| | | |
| * | | * unix/tclUnixChan.c: fix minor compiler warningnijtmans2008-10-081-2/+2
| | | | | | | | | | | | | | | | | | | | * unix/tcl.m4: fix for bug [2073255] * unix/configure: regenerated
| * | | Streamline async connect logic [Patch 1994512].jenglish2008-08-051-68/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Consolidate error reporting paths in CreateSocket(); Restore blocking mode immediately after connect() FD blocking mode is now consistent with [fconfigure ... -blocking] setting while async connect is in progress.
* | | | Add test-case for previous commit, which shows that when trying to open a ↵jan.nijtmans2014-11-031-0/+5
| | | | | | | | | | | | | | | | filename with invalid characters gives the right error-message. (same bug existed on UNIX too, which is now fixed)
* | | | Additional check for an error condition on the socket.dgp2014-06-121-1/+7
| | | |
* | | | Workaround the broken select() in some Linux kernels that fails to reportdgp2014-06-111-3/+52
| |_|/ |/| | | | | | | | | | | a writable state on a socket when an error condition (or remote close) is present. Would be good to add actual test suite tests for this, but until then see demo scripts in the ticket 1758a0b603.
* | | make some more internal tables constjan.nijtmans2012-04-231-1/+1
|\ \ \ | |_|/ |/| |
| * | make some more internal tables constjan.nijtmans2012-04-231-1/+1
| | | | | | | | | On cygwin, install dll's in /usr/bin, not in /usr/lib
| * | Backport to 8.4/unix the healthy FD_SET reform started by das. Allows Tcl8.4 ↵guest2012-03-041-25/+30
| | | | | | | | | | | | to have sane fileevents on x86_64 unices at last.
* | | Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-021-2/+0
|\ \ \ | |/ / | | | more harm than good. Purged them.
| * | Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-011-2/+0
| | | | | | | | | more harm than good. Purged them.
| * | [backported] Refrain from a possibly lengthy reverse-DNS lookup on 0.0.0.0 whenferrieux2010-03-011-5/+24
| | | | | | | | | | | | | | | calling [fconfigure -sockname] on an universally-bound (default) server socket.
| * | Fix mark and space parity on Linuxrmax2008-03-031-1/+4
| | |