Ondřej Surý
a6dcdc535c
Replace usage of isc_mem_put+isc_mem_detach with isc_mem_putanddetach
...
Using isc_mem_put(mctx, ...) + isc_mem_detach(mctx) required juggling with the
local variables when mctx was part of the freed object. The isc_mem_putanddetach
function can handle this case internally, but it wasn't used everywhere. This
commit apply the semantic patching plus bit of manual work to replace all such
occurrences with proper usage of isc_mem_putanddetach().
2019-07-31 10:26:40 +02:00
Ondřej Surý
ae83801e2b
Remove blocks checking whether isc_mem_get() failed using the coccinelle
2019-07-23 15:32:35 -04:00
Ondřej Surý
69e84ab9c1
Fixup the increment vs decrement typo in lib/isc/win32/socket.c
2019-07-21 22:05:24 -04:00
Witold Kręcicki
895eabd376
Fix Windows compilation issues with !1952 , contributed by Thomas Jach
2019-07-10 12:31:39 +02:00
Ondřej Surý
0471d1c1ce
lib/isc/win32/socket.c: use isc_refcount_t
2019-07-09 16:11:14 +02:00
Ondřej Surý
e3e6888946
Make the usage of json-c objects opaque to the caller
...
The json-c have previously leaked into the global namespace leading
to forced -I<include_path> for every compilation unit using isc/xml.h
header. This MR fixes the usage making the caller object opaque.
2019-06-25 12:04:20 +02:00
Ondřej Surý
0771dd3be8
Make the usage of libxml2 opaque to the caller
...
The libxml2 have previously leaked into the global namespace leading
to forced -I<include_path> for every compilation unit using isc/xml.h
header. This MR fixes the usage making the caller object opaque.
2019-06-25 12:01:32 +02:00
Ondřej Surý
4d2d3b49ce
Cleanup the way we detect json-c library to use only pkg-config
2019-05-29 15:08:52 +02:00
Ondřej Surý
eb8c9bdd55
Make lib/isc/app.c opaque and thread-safe
...
This work cleans up the API which includes couple of things:
1. Make the isc_appctx_t type fully opaque
2. Protect all access to the isc_app_t members via stdatomics
3. sigwait() is part of POSIX.1, remove dead non-sigwait code
4. Remove unused code: isc_appctx_set{taskmgr,sockmgr,timermgr}
2019-05-20 18:13:02 +02:00
Ondřej Surý
78d0cb0a7d
Use coccinelle to remove explicit '#include <config.h>' from the source files
2019-03-08 15:15:05 +01:00
Ondřej Surý
e2cdf066ea
Remove message catalogs
2019-01-09 23:44:26 +01:00
Witold Kręcicki
929ea7c2c4
- Make isc_mutex_destroy return void
...
- Make isc_mutexblock_init/destroy return void
- Minor cleanups
2018-11-22 11:52:08 +00:00
Ondřej Surý
2f3eee5a4f
isc_mutex_init returns 'void'
2018-11-22 11:51:49 +00:00
Ondřej Surý
73a8999d1c
isc_condition_init returns 'void'
2018-11-22 11:51:49 +00:00
Mark Andrews
474fbe88bf
add missing tasks argument
2018-11-16 11:51:05 +11:00
Evan Hunt
1f0cd6606e
style: one-line statement braces, line length, etc
2018-11-15 08:21:40 +00:00
Witold Kręcicki
ca7b5ceee5
Synchronize Windows socket code with API changes.
2018-11-15 08:21:17 +00:00
Witold Kręcicki
9c926a5d9b
Mangle fdlocks a bit.
...
Mutexes are slower if they're in the same cache line. Since
fd's come in herds, and usually our listen sockets will have nearby
fd numbers, we mangle fdlocks so that the locks are further away.
2018-11-15 08:21:17 +00:00
Witold Kręcicki
bd024eee57
Add runtime detection of SO_REUSEPORT, use it instead of dup() if available.
2018-11-15 08:21:17 +00:00
Witold Kręcicki
778ab8158a
Remove fdwatch sockets, those are not used anywhere.
2018-11-15 08:21:17 +00:00
Ondřej Surý
b2b43fd235
Turn (int & flag) into (int & flag) != 0 when implicitly typed to bool
2018-11-08 12:21:53 +07:00
Witold Kręcicki
76ec6861e5
Remove vector socket functions from Windows socket code
...
Remove the following functions in order to simplify socket code:
- isc_socket_recvv()
- isc_socket_sendtov()
- isc_socket_sendtov2()
- isc_socket_sendv()
2018-10-31 12:12:53 +01:00
Evan Hunt
e839972ee2
address unresolved externals
2018-10-19 00:49:53 -07:00
Witold Kręcicki
38a127c35b
Remove layering from isc_task, isc_app, isc_socket, isc_timer, isc_mem
2018-10-18 09:19:12 +00:00
Ondřej Surý
2750799132
Assume socklen_t is always available on all supported platforms (except on Windows where it is typedefed to int32_t)
2018-09-07 12:17:40 +02:00
Ondřej Surý
f1d3055d7b
Replace platform ISC_PLATFORM_HAVETFO with config ENABLE_TCP_FASTOPEN
2018-09-07 12:17:30 +02:00
Ondřej Surý
aa3e33575d
Fixup Windows build after strerr changes
2018-08-29 21:21:52 +02:00
Ondřej Surý
1672935717
Use strerror_r from POSIX.1-2001 (strerror_s on Windows) instead of custom isc__strerror()
2018-08-28 10:31:48 +02:00
Ondřej Surý
7b21bbb7c1
Require IPv6 support from the OS
2018-08-28 10:31:47 +02:00
Witold Kręcicki
5cdb38c2c7
Remove unthreaded support
2018-08-16 17:18:52 +02:00
Ondřej Surý
7351c505a0
Remove duplicate config.h
2018-08-08 09:37:30 +02:00
Ondřej Surý
994e656977
Replace custom isc_boolean_t with C standard bool type
2018-08-08 09:37:30 +02:00
Ondřej Surý
cb6a185c69
Replace custom isc_u?intNN_t types with C99 u?intNN_t types
2018-08-08 09:37:28 +02:00
Ondřej Surý
7ee8a7e69f
address win32 build issues
...
- Replace external -DOPENSSL/-DPKCS11CRYPTO with properly AC_DEFINEd
HAVE_OPENSSL/HAVE_PKCS11
- Don't enforce the crypto provider from platform.h, just from dst_api.c
and configure scripts
2018-05-22 16:32:21 -07:00
Mark Andrews
f8d2a46daa
remove exit calls after FATAL_ERROR
2018-04-20 14:50:35 -07:00
Ondřej Surý
c2f42583c0
Refactor ISC_SOCKET_* defines into an isc_socket_options_t enum
2018-04-12 09:54:21 +02:00
Ondřej Surý
843d389661
Update license headers to not include years in copyright in all applicable files
2018-02-23 10:12:02 +01:00
Mark Andrews
54275e8f5c
use %u instead of %d
2018-02-16 10:20:38 +11:00
Tinderbox User
02ce048c91
update copyright notice / whitespace
2018-02-08 23:46:17 +00:00
Mark Andrews
6757dc6488
[master] fix nsupdate test on windows
...
4888. [test] Initialize sockets correctly in sample-update so
that nsupdate system test will will run on Windows.
[RT #47097 ]
2018-02-08 13:34:43 -08:00
Mark Andrews
a009d03a1a
4748. [cleanup] Sprintf to snprintf coversions. [RT #46132 ]
2017-10-03 14:54:19 +11:00
Mark Andrews
5fb0c09a5e
#include <isc/string.h>
2017-09-14 18:54:46 +10:00
Mark Andrews
cb629cdeda
more str{n}{cat,cpy} corrections rt45981_stage2
2017-09-14 18:11:56 +10:00
Mark Andrews
6adc40b3ce
4704. [cleanup] Silence Visual Studio compiler warnings. [RT #45898 ]
2017-09-07 12:57:55 +10:00
Mark Andrews
10076239f6
missing (const)
2017-09-04 18:22:52 +10:00
Mark Andrews
5140501a0b
4660. [bug] Remove spurious "peer" from Windows socket log
...
messages. [RT #45617 ]
2017-07-28 16:06:51 +10:00
Tinderbox User
b5808abc69
update copyright notice / whitespace
2017-01-24 23:45:30 +00:00
Mark Andrews
3e9f874e1f
win32: add consts
2017-01-24 22:44:25 +11:00
Mark Andrews
a611e44f9a
4519. [port] win32: handle ERROR_MORE_DATA. [RT #43534 ]
2016-11-29 11:28:26 +11:00
Mark Andrews
358c6ecd26
4516. [bug] isc_socketmgr_renderjson was missing from the
...
windows build. [RT #43602 ]
2016-11-22 12:07:42 +11:00