summaryrefslogtreecommitdiffstats
path: root/generic/tclIOSock.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2017-01-04 12:55:27 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2017-01-04 12:55:27 (GMT)
commit1aef6cddbf5ff7fe047f3a0a1a0e5e9ab45c6a86 (patch)
tree821da9f44bd3dcf3d64624eb0a1cec59b7015104 /generic/tclIOSock.c
parent2d45ce8f574a9204a0462d5e27867fda53f09f05 (diff)
parent7628e8f3871e65f729e55364626f5684b172bddc (diff)
downloadtcl-tip_456.zip
tcl-tip_456.tar.gz
tcl-tip_456.tar.bz2
TIP [http://www.tcl.tk/cgi-bin/tct/tip/456|456] implementation: Extend the C API to Support Passing Options to TCP Server Creationtip_456
Diffstat (limited to 'generic/tclIOSock.c')
-rw-r--r--generic/tclIOSock.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/generic/tclIOSock.c b/generic/tclIOSock.c
index 7ed751c..8ad268a 100644
--- a/generic/tclIOSock.c
+++ b/generic/tclIOSock.c
@@ -285,6 +285,34 @@ TclCreateSocketAddress(
}
/*
+ *----------------------------------------------------------------------
+ *
+ * Tcl_OpenTcpServer --
+ *
+ * Opens a TCP server socket and creates a channel around it.
+ *
+ * Results:
+ * The channel or NULL if failed. If an error occurred, an error message
+ * is left in the interp's result if interp is not NULL.
+ *
+ * Side effects:
+ * Opens a server socket and creates a new channel.
+ *
+ *----------------------------------------------------------------------
+ */
+Tcl_Channel Tcl_OpenTcpServer(Tcl_Interp *interp, int port,
+ const char *host, Tcl_TcpAcceptProc *acceptProc,
+ ClientData callbackData)
+{
+ char portbuf[TCL_INTEGER_SPACE];
+
+ TclFormatInt(portbuf, port);
+
+ return Tcl_OpenTcpServerEx(interp, portbuf, host, TCL_TCPSERVER_REUSEADDR,
+ acceptProc, callbackData);
+}
+
+/*
* Local Variables:
* mode: c
* c-basic-offset: 4