Federico Ceratto
d8ff25f032
Provide access to getsockname()/getpeername()
...
Port of #3323 with added tests
2019-02-17 17:04:57 +00:00
Dominik Picheta
76c214a2e9
Merge pull request #9915 from zevv/asyncnet-unix
...
Added basic AF_UNIX support to asyncnet.
2018-12-12 23:06:08 +00:00
Ico Doornekamp
71e9fff364
Added basic AF_UNIX support to asyncnet.
...
Unfortunately this required some code duplication because the
doConnect() from asynccommon.nim only works with addrInfo which does not
make sense for AF_UNIX.
makeUnixAddr() was moved to nativesocket.nim and exported
2018-12-09 20:53:05 +01:00
Yuriy Glukhov
410fd1deae
Fixes 9716 [backport] ( #9790 )
...
* reuse temporary variable
* fixes #9716 [backport]
* Declare local vars in safer place
2018-11-24 10:50:48 +01:00
Andreas Rumpf
223e92b83a
stdlib: documenation updates, the exception names have been changed
2018-10-25 07:42:45 +02:00
Andreas Rumpf
dae5450947
WIP: disallow 'nil' for strings and seqs
2018-08-13 11:41:33 +02:00
Araq
b07d1f1dc3
make async tests green for Linux
2018-08-08 16:18:30 +02:00
Araq
bbb0fd4eb7
remove deprecated stuff from the stdlib; introduce better deprecation warnings
2018-05-05 21:45:07 +02:00
Andreas Rumpf
f0eb3505fa
make asyncnet work again
2018-04-30 02:00:17 +02:00
Dominik Picheta
1a2351f95f
Fixes #4995 . ( #7157 )
2018-02-13 11:08:37 +01:00
Dominik Picheta
86fb8bf723
Revert 3db460f504 as requested by @Araq.
2018-01-28 17:13:08 +00:00
Dominik Picheta
47d05b3f2e
Merge branch 'devel' into async-improvements
2018-01-17 16:28:00 +00:00
Dominik Picheta
1661062ebf
Raise assertion error when attempting to use closed socket.
2018-01-15 17:48:32 +00:00
Dominik Picheta
66d7091b79
setBlocking(false) is called on AsyncFD in newAsyncSocket proc.
2017-11-24 16:27:43 +00:00
Arne Döring
000b8afd26
Remove expr/stmt ( #5857 )
2017-07-25 09:28:23 +02:00
Euan Torano
3f3853945d
Adding test for recvline
...
Signed-off-by: Euan Torano <euantorano@gmail.com>
2017-07-09 20:50:47 +01:00
Euan T
a5681d03e3
Wait for reads to finish before reading the result
...
As requested by @dom96, this fixes an issue seen here: https://github.com/nim-lang/redis/pull/4#issuecomment-312713921
2017-07-03 20:13:25 +01:00
Ruslan Mustakov
e0059287bb
Add 'hostname' param to wrapConnectedSocket
2017-05-04 16:27:08 +07:00
Ruslan Mustakov
ecf278c467
Implement dial, support IPv6 in httpclient ( #5763 )
...
* Implement dial, support IPv6 in httpclient
Added ``dial`` procedure to networking modules: ``net``, ``asyncdispatch``,
``asyncnet``. It merges socket creation, address resolution, and connection
into single step. When using ``dial``, you don't have to worry about
IPv4 vs IPv6 problem.
Fixed addrInfo loop in connect to behave properly.
Previously it would stop on first non-immediate failure, instead of
continuing and trying the remaining addresses.
Fixed newAsyncNativeSocket to raise proper error if socket creation
fails.
Fixes : #3811
* Check domain during connect() only on non-Windows
This is how it was in the previous implementation of connect().
* Call 'osLastError' before 'close' in net.dial
* Record osLastError before freeAddrInfo in net.dial
* Add missing docs for 'dial' proc
* Optimize dial to create one FD per domain, add tests
And make async IPv6 servers work on Windows.
* Add IPv6 test to uri module
* Fix getAddrString error handling
2017-05-02 09:25:50 +02:00
Andreas Rumpf
159643824b
fixes #3847 ( #5609 )
2017-03-27 09:39:46 +02:00
Dominik Picheta
0535b6b6bf
Implement SSL SNI hostname setting for asyncnet.
2017-02-08 00:04:40 +01:00
Andreas Rumpf
76eb20d2d3
deprecated nativesockets.dealloc, use freeAddrInfo instead; fixed stdlib deprecations
2017-01-30 08:50:57 +01:00
Dominik Picheta
864946afb8
Add async IO overview to asyncnet module docs.
2017-01-06 12:43:37 +00:00
Federico Ceratto
a8c439afb5
Add OptReuseAddr to example and handle closing
2017-01-02 17:02:20 +00:00
Dominik Picheta
df44c71770
Fixes #4587 .
2016-09-25 19:26:28 +02:00
Dominik Picheta
8a6343b5b6
Fixes #3847 .
2016-09-25 13:02:10 +02:00
cheatfate
1350d5312b
Removed tests with asyncio.
...
Fix ssl connection drop in asyncnet
Add tasyncssl test
2016-09-07 12:19:06 +03:00
Dominik Picheta
87eb3a105d
Some small fixes to changes introduced by #4683 .
2016-09-06 20:35:02 +02:00
Anatoly Galiulin
60dbfb2ec9
Revert function names scheme due to the @dom96 comment
2016-09-06 09:31:13 +07:00
Anatoly Galiulin
436a5a01ab
Fix typo
2016-09-06 09:31:13 +07:00
Anatoly Galiulin
e4c46e6fba
Add async IO operations with buffers on files and sockets
2016-09-06 09:31:13 +07:00
Dominik Picheta
f73dd02787
Fix broken asyncnet module.
2016-06-03 14:21:37 +01:00
Dominik Picheta
8050f43588
Fixed some warnings in httpclient, net, and openssl.
2016-04-04 21:28:21 +01:00
Dominik Picheta
03be03c6e4
Improved asyncnet docs (SSL procs now shown). Deprecated handshake.
2016-04-04 21:00:43 +01:00
Adam Strzelecki
be991ed413
Rename rawsockets module to nativesockets
...
This change was done to avoid confusion with TCP/IP raw sockets. Native sockets
module represents handling native system low level socket API in general and is
not just limited anyhow to TCP/IP raw sockets.
A stub lib/deprecated/pure/rawsockets.nim module has been added as
compatibility layer for old code using rawsockets, so this change will not
break existing code.
2015-10-03 19:45:41 +02:00
Dominik Picheta
492f5eb704
Fixes asyncnet.recvLine. Fixes #3346 .
2015-09-19 14:01:45 +01:00
Dominik Picheta
28e3ad945a
Reintroduce FutureVar[T] from commit 72b4912c84.
2015-09-11 13:03:59 +01:00
Bruce Doan
55ef708e73
Free SSL handler to avoid memory leaks
2015-07-31 01:24:35 +07:00
Dominik Picheta
615defb1a9
Fixes socket problems on Windows and normalises some names.
...
Ref #2976 . Ref #2003 . See news.txt for details.
2015-06-29 20:11:21 +01:00
Andrew Yourtchenko
c42b08988c
Make newAsyncSocket AF_INET6 the default domain.
2015-06-23 23:03:35 +02:00
Andrew Yourtchenko
93e2d9f979
Make asyncnet.bindAddr IPv4+IPv6 compatible.
2015-06-23 23:02:10 +02:00
Dominik Picheta
68f583ddb7
Adjustments to #2610 .
2015-06-22 21:40:38 +01:00
Dominik Picheta
8853dfb353
Merge branch 'starttls' of https://github.com/wiml/Nim into wiml-starttls
...
Conflicts:
lib/pure/net.nim
2015-06-22 21:34:21 +01:00
Dominik Picheta
c5708ef1ee
Merge branch 'exportnewsocket' of https://github.com/boopcat/Nim into boopcat-exportnewsocket
...
Conflicts:
lib/pure/asyncnet.nim
2015-06-05 15:06:02 +01:00
pdw
192ba3bbc0
lib/pure/a-c - Dropped 'T' from types
2015-06-04 13:17:11 +02:00
boopcat
af07db2829
Export newSocket(fd) from net.nim and standardize args in net/asyncnet
...
Exporting newSocket(fd) mimics what asyncnet does and lets you pass in your
own socket FD.
newSocket*(fd) and newAsyncSocket*(fd) now both take "buffered" instead of
"isBuff" and defaults to true to match the other constructors on both.
2015-05-30 11:01:15 +00:00
Wim Lewis
df1cdced1d
Make the post-connection wrapSocket() call available in both the synchronous and asynchrinous net modules.
2015-04-26 22:10:35 -07:00
def
1b7cf0e3f3
Add warning about recvLineInto being bound to change
2015-04-26 17:06:41 +02:00
def
84315c6a9c
Revert "Introduce FutureVar[T] to make recvLineInto safer."
...
This reverts commit 72b4912c84 .
2015-04-26 17:01:04 +02:00
Dominik Picheta
f4c1c252a7
Fix asyncdispatch on Windows.
2015-04-24 18:12:13 +01:00