4d61e98172
copied netlink.h and netlink.c from musl
2018-10-21 16:53:41 +00:00
1758ba4e1e
fixed Sttp to return T_EOF when EOF is reached
2018-10-21 16:36:03 +00:00
942f33d8d4
added App::isGuardian()
2018-10-20 03:36:40 +00:00
5e35f69abb
added several functions into Socket that accepts a length-bounded interface name
2018-10-19 08:28:12 +00:00
1456f94bd1
fixed wrong #ifdefs in nwif.c
2018-10-18 23:46:50 +00:00
7762a0bc90
changed fcntl to ::fcntl in Socket.cpp
2018-10-18 23:35:56 +00:00
d533112788
added Socket::bindToIfce()
2018-10-18 23:29:20 +00:00
d3ed032636
added +int Socket::bindToIfceAddr()
2018-10-18 10:37:00 +00:00
05c2905a0a
added Socket::joinMulticastGroup() and Socket::leaveMulticastGroup()
2018-10-18 07:30:25 +00:00
72345c7280
changed length check in Socket::getIfceIfindex() functions
2018-10-17 15:21:48 +00:00
5b529ad535
added Socket::getIfceIndex(), Socket::getIfceAddress(), etc
2018-10-17 14:20:32 +00:00
4a10c5d7cd
added QSE_CLI_DISCRETIONARY_OPTVAL.
...
renamed QSE_CLI_OPTVAL to QSE_CLI_REQUIRE_OPTVAL
renamed QSE_CLI_OPTNAME to QSE_CLI_REQUIRE_OPTNAME
2018-10-17 08:07:45 +00:00
e936bf3502
added qse_ip6adxx_t with address classification functions
...
defined data types and routines and dhcpv6 messages
2018-10-16 15:59:24 +00:00
2915a591f0
added qse_str_to_ntime() and similar functions.
...
relocated cli error codes into the new enum type qse_cli_error_code_t
2018-10-16 15:53:08 +00:00
80ceed7bb2
fixed the name of the second parameter in declaration of qse_dhcp4_find_option()
2018-09-28 16:32:36 +00:00
5743a341cc
changed the second parameter of qse_awk_rtx_strtonum() to accept the base value on top of the 'strict' conversion bit.
...
enhanced awk's str::tonum() to accept the optional base parameter
2018-09-26 05:41:37 +00:00
eb79fa721f
removed unneeded semicolons at the back of qse_strxcat macros
2018-09-21 14:28:23 +00:00
a9d5a27d43
fixed more flaws in the sample programs
2018-09-18 09:15:31 +00:00
953bb70a56
fixed minor flaws in some sample programs
2018-09-18 09:02:00 +00:00
9f07886166
changed App::guardProcess() to return the number of respawn attempts, capped at INT_MAX
2018-09-17 10:11:57 +00:00
016e7da24a
added App::sleep()
2018-09-17 02:51:52 +00:00
3a66a8d927
redefined some time macros selectively
2018-09-16 17:04:00 +00:00
c467a28f18
renamed some signal handling functions in the App class
2018-09-13 06:51:48 +00:00
c09a0161eb
renamed qse_runmain() to qse_run_main()
2018-09-13 03:16:23 +00:00
0dd7cc2d65
enhanded guardProcess() with setpgid() and kill()
2018-09-11 15:11:48 +00:00
1218015572
stablized the signal functions in the App class
2018-09-10 14:15:28 +00:00
9764d448af
attempted to fix various problems related to signals in App
2018-09-09 17:22:16 +00:00
7bfba716f6
added basic methods to Bitset
2018-09-08 05:15:51 +00:00
1c996b5d95
added the initial BitSet class without actual code
2018-09-07 11:27:15 +00:00
5f29d1670f
improving signal handling of the App class
2018-09-06 09:59:54 +00:00
e8804b20ec
added a very simple App::guardProcess() function
2018-09-05 14:52:51 +00:00
6f314b0dd8
added mutex protection to input functions in sio
2018-09-05 14:06:19 +00:00
8bbef694f9
removed redundant tab letters
2018-09-04 15:10:15 +00:00
f93bf8d053
fixed bugs in mutex protection in sio.
...
added qse_open_stdsios_with_flags
2018-09-04 15:07:42 +00:00
cbe34cc526
added some code to sio to suppoert QSE_SIO_REENTRANT. not completed yet
2018-09-04 10:27:24 +00:00
82995c9f0d
fixed some bugs in the signal related functions of the QSE::App class
2018-09-04 08:46:48 +00:00
bb7a03bbc5
enhancled the App class to support per-instance signal handler
2018-08-31 09:39:12 +00:00
f6c60f3c46
added StrBase::isEmpty()
2018-08-16 07:15:36 +00:00
73567527f1
added qse_mtx_trylock() and QSE::Mutex::trylock()
2018-08-16 03:45:17 +00:00
0aca321aee
enhanced the json reader in xli to recognize a negative integer
2018-08-14 06:42:37 +00:00
52baa3222f
removed virtual from ~Sttp()
2018-07-20 14:56:00 +00:00
f104855427
added tcpsvr02.cpp
2018-07-20 14:52:34 +00:00
7755914a2c
renamed AppRoot to App
...
added App::setSignalHandler() and App::unsetSignalHandler()
2018-07-20 08:48:33 +00:00
f6c51b1a67
added Named.
...
removed unneeded lines from Transmittable.hpp
fixed include/qse/cmn/Makefile.am
2018-07-19 07:32:04 +00:00
3c85887ebc
added SttpCmd and Sttp
2018-07-18 04:35:41 +00:00
a346d27d5f
added the Condition class
2018-07-16 04:18:02 +00:00
b510d11c55
implemented value probing in SkvEnv
2018-07-14 17:05:08 +00:00
7a02450a5d
wrote some functions in SkvEnv using xli functions
2018-07-13 11:13:30 +00:00
eb35325a96
adding SkvEnv
2018-07-12 11:09:35 +00:00
1d9054af17
touched up TcpServer termination
2018-07-02 13:02:27 +00:00
d7a27d4a84
fixed a minor flaw in a sample program
2018-07-01 14:17:54 +00:00
029407b685
fixed the typo - E_NOERR to E_ENOMEM
2018-07-01 14:09:18 +00:00
0d675358aa
set error code in setWorkerHandler
2018-07-01 14:08:20 +00:00
d4444400f7
deleted an unneeded line
2018-07-01 14:04:07 +00:00
797518df18
rename QSE::TcpServer::Client to QSE::TcpServer::Worker.
...
added code to generate unique worker id
2018-07-01 13:57:37 +00:00
3d5d9aebfb
migrated Mutex to Mutex.hpp
2018-07-01 12:43:56 +00:00
0cbdf10332
added Mutex.
...
added QSE_CPP_THREXCEPT1() and similar macros
changed the termination code of TcpServer
2018-07-01 11:21:00 +00:00
1a102644ed
prevented HeapMmgr::allocMem() and HeapMmgr::reallocMem() from thrown an exception
2018-07-01 07:59:06 +00:00
9ff9cb1d55
fixed the wrong call to QSE_CPP_CALL_DESTRUCTOR to QSE_CPP_DELETE_WITH_MMGR
2018-07-01 07:37:01 +00:00
9cbd6cd7fe
fixed the code to call the destructor when dispoing an object with mmgr
2018-07-01 07:33:56 +00:00
87e0cf1b40
initialized client_list in TcpServer with mmgr
2018-07-01 04:18:23 +00:00
c4e66a102a
fixed part of code left out in the previous commit
2018-07-01 02:20:03 +00:00
27039d9693
got TcpServer and Thread to inherit Mmged
2018-07-01 02:11:33 +00:00
1d12ec3e3f
changed configure.ac to test __int128_t in va_arg
2018-06-29 16:48:20 +00:00
51f61a31b6
on netbsd, the accepted socket inherited O_NONBLOCK if the accepting socket has it. i made changes to prevent this
2018-06-29 04:53:28 +00:00
8ce9ff41a0
enhanced qse_mux_poll() to accept QSE_NULL for timeout to wait indefinitely
...
made TcpServer more robust
2018-06-28 14:07:35 +00:00
20e042df0c
work in progress to replace epoll with qse_mux_t
2018-06-28 09:43:34 +00:00
40cdf684de
switched to use a spin lock on behalf of a mutex
2018-06-28 04:08:43 +00:00
6519b1e4db
added SocketAddress::toStrBuf().
...
protected client socket closure with mutex
2018-06-27 11:18:20 +00:00
afe36ac593
finished QSE::TcpServerL
2018-06-27 08:53:51 +00:00
19df0af32a
fixed TcpServer to close pipes properly upon termination
2018-06-26 15:45:44 +00:00
b2f9abef77
fixed quite a few issues in TcpServer
2018-06-26 15:27:52 +00:00
d7bdc63690
adding multiple listeners into TcpServer
2018-06-26 14:43:43 +00:00
eb2755fa6b
interim update while working TcpServer
2018-06-26 09:28:12 +00:00
d6b9e78114
removed the bundled libltdl
2018-06-26 08:30:02 +00:00
a51e54bda6
TcpServer now compilable at least
2018-06-25 15:52:05 +00:00
26bf5f1a6e
fixed a wrong prototype name qse_sio_getmc() to qse_sio_getmb()
2018-06-25 13:35:25 +00:00
bdf1ab2234
reverted unwanted changes
2018-06-25 10:51:24 +00:00
26e27e78cd
work in progress. adding TcpServer
2018-06-25 10:47:27 +00:00
70c787de9f
removed special handling of $ in qse_strsubst() as literal $ can be denoted by 11789
2018-04-03 09:33:50 +00:00
5c297d784a
fixed some issues in socket address conversion
2018-03-25 03:05:12 +00:00
598f4f0457
included more header files in nwad-skad.c
2018-03-07 13:26:21 +00:00
9d87420bf6
added Socket::sendx() functions
...
added SocketAddress::set() that accepts a string
fixed a bug in nwad-skad.c
2018-03-07 09:18:36 +00:00
3613919dc1
reverted the kt workaround
2018-02-22 17:22:50 +00:00
3cbde90f70
raised the version number to 0.8.0
2018-02-09 10:38:12 +00:00
1e473ed089
fixed the gnuc condition for visibility attribute
2018-02-01 13:13:58 +00:00
46cd39cabb
changed configure.ac to check the offset of sa_family in struct sockaddr
2018-02-01 09:34:12 +00:00
b7e540d6cf
added some more code to spl.h
2018-01-31 14:50:40 +00:00
be51ae8e61
added spl.h
...
changed SpinLock.hpp to use spl.h
2018-01-31 10:34:38 +00:00
4eff683036
added noexcept specifier to functions in SpinLock.hpp
2018-01-30 08:43:15 +00:00
d0bb9ae911
added some checks for compiler builtins.
...
enhanced SpinLock code
2018-01-30 08:33:45 +00:00
3a9e278f0b
added --enable-wchar-prefer-char16
2018-01-30 04:17:26 +00:00
2fbfe3a71b
changed to prefer char16_t with c11 compiler. yet to add --prefer-char16 option to configure.ac
2018-01-29 15:38:32 +00:00
11d1344b70
added an experimental SpinLock class
2018-01-29 10:21:54 +00:00
ab98ce632e
removed a redundant work from Thread.hpp
2018-01-29 09:29:46 +00:00
2a1cda7981
added QSE::ThreadL
2018-01-29 09:25:47 +00:00
8e78356337
renamed ThreadC to ThreadF
2018-01-29 05:02:51 +00:00
57201a2af3
added a move contructor to ThreadC
2018-01-29 05:01:47 +00:00
c274cc0fb4
checked O_CLOEXEC availibility
2018-01-28 05:17:42 +00:00
4243665288
removed an unused variable in htl.c
2018-01-28 04:58:56 +00:00
789b2a36ad
fixed source code for old compilers
2018-01-28 04:51:22 +00:00
355a7cfe59
changed thr02.cpp for a pre-c++11 compiler
2018-01-27 16:46:46 +00:00
60797172e3
touched up Thread.hpp
2018-01-27 16:38:13 +00:00
36d4883f6d
added QSE::ThreadR and QSE::ThreadC
2018-01-27 16:35:02 +00:00
8256cee77f
touched up QSE::Thread
2018-01-27 05:58:20 +00:00
5a3586232f
relaxed some code for pre-c++11 compilers
2018-01-26 15:03:40 +00:00
4af515c970
added some threading functions
2018-01-26 10:03:58 +00:00
58033d0265
wrote some socket functions
2018-01-25 14:46:57 +00:00
47f662861f
Added some socket functions
2018-01-25 09:56:30 +00:00
c0a072a054
touched up qse_xli_setpairwithstr() a bit
2018-01-22 09:38:44 +00:00
fc1748ccd0
added description on qse_wcsxjoin()
2018-01-22 03:04:29 +00:00
df76a61d3b
changed the need_comma function to take into account the xli->opt.cbs.pair_writable callback function
2018-01-21 17:58:24 +00:00
b3a288affb
added the pair_writable callback to xli
2018-01-21 17:13:43 +00:00
d61c292659
added qse_floc_t and qse_flocxx_t types
2018-01-21 04:15:09 +00:00
3a2356737d
added a callback called when a pair is read in by the xli format reader and the json format reader
2018-01-19 15:57:44 +00:00
2280811a8e
fixed a bug in the json format reader. it failed to read an empty array before the fix.
...
fixed a bug in the json format writer. it quoted a numeric string before the fix. it is enhanced to handle the multi-segment string(loaded by an xli format reader) better
2018-01-19 04:47:28 +00:00
e5fa90ec02
added the QSE_XLI_CASE_INSENSITIVE trait enumerator and revised macro defintions of string comparision functiosn for supporting the added enumerator
2018-01-19 03:53:43 +00:00
ffa5514b43
added QSE_FS_MKDIR_IGNORE_UMASK
2018-01-18 10:27:46 +00:00
3f3d41528a
added the moo_ip4adxx_t type and moved c++ functions to it from moo_ip4ad_t
2018-01-18 04:30:43 +00:00
d991f9c27b
added the qse_fs_mode_t type and the mode parameter to qse_mkdir() and related functions
2018-01-17 07:45:31 +00:00
db55393050
changed to use AX_CHECK_NUMVALOF to find the value of PATH_MAX
2018-01-17 06:06:11 +00:00
8ce346e1ed
defined QSE_PATH_MAX
...
added more operators to qse_ip4ad_t for c++
2018-01-17 04:38:21 +00:00
825cf63d04
deleted unneeded macros
2018-01-15 14:00:02 +00:00
5d71710b18
enhanced the json writer to inject {} or [] manually when the outermost enclosers are not found
2018-01-15 09:20:28 +00:00
fa21cef920
added qse_mbsxistype(0 and qse_wcsxistype()
2018-01-12 08:44:41 +00:00
5e3507e836
added qse_mbsistype(), qse_wcsistype()
...
added qse_cli_t and related functions as an alternative interface to parse command-line arguments
2018-01-12 08:21:57 +00:00
7b1db985c5
disallowed @include outside the outermost braces or brackets in the json format
2018-01-11 09:36:15 +00:00
c756ae65e2
added a working json format writer
2018-01-11 08:32:21 +00:00
12212d55cc
added qse_xli_vtext_t to store the outermost braces and brackets in the json format
...
changed the json format reader to recognize the outermost braces and brackets
2018-01-11 04:02:48 +00:00
4636a46acb
added quite some xli code to read the json formatted data
2018-01-10 10:01:41 +00:00
779b335710
reverted previous 2 commits for support json format in xli.
...
instead, i'm writing a different json format reader
2018-01-09 10:45:43 +00:00
6237b43441
added QSE_XLI_JSON and abandoned QSE_XLI_TAGMARKER, QSE_XLI_ARRAYMARKER, and QSE_XLI_ASSIGNWITHCOLON
2018-01-08 08:25:49 +00:00
03cb7dd9dc
added QSE_XLI_ASSIGNWITHCOLON, QSE_XLI_TAGMARKER, QSE_XLI_ARRAYMARKE and added partial code for more extension work in progress
2018-01-05 10:55:20 +00:00
dccad56ca5
revised qse_wcsxcmp(), qse_wcsxcasecmp(), qse_mbsxcmp(), qse_mbsxcasecmp()
2018-01-03 06:59:41 +00:00
5174784cfe
revised qse_mbsxcmp(), qse_wcsxcmp(), qse_mbsxcasecmp(), qse_wcsxcasecmp()
2017-12-31 16:40:24 +00:00
f595c300c1
added uncommited build files
2017-12-26 14:39:54 +00:00
231f1b9508
added common test macros.
...
added dhcp packet composition functions
2017-12-26 10:06:00 +00:00
480e68fe36
added some dhcp packet handling functions
2017-12-19 09:01:36 +00:00
b6781e0554
just some minor fixes
2017-12-18 07:28:17 +00:00
0c8608f81b
added the endptr parameter to various string to number conversion functions
2017-12-18 07:20:02 +00:00
42ecad1e38
added an experimental function qse_rad_insert_extended_vendor_specific_attribute() to support EVS. yet a lot of wors are to be done to support tag, extended, long-extended, tlv
2017-12-18 06:27:54 +00:00
2172fa59a5
enhanced the constant value handling
2017-12-14 10:02:44 +00:00
1f56b6cf93
added qse_substbasenamedup()/qse_substwcsbasenamedup()/qse_substmbsbasenamedup().
...
enhanced $INCLUDE handling in raddic
2017-12-14 04:08:10 +00:00
61483e294a
added a primitive dictionary file loader. needs more work
2017-12-13 08:21:13 +00:00
f9970ef086
added constant manipulation functions in raddic
2017-12-12 07:27:17 +00:00
b081c10f83
fixed wrong cache handing in manipulating the attributes in raddic
2017-12-12 03:17:02 +00:00
80ade41ea9
added qse_raddic_addattr(), qse_raddic_deleteattrbyname(), qes_raddic_deleteattrbyvalue(), qse_raddic_findattrbyname(), qse_raddic_findattrbyvalue()
2017-12-11 10:02:49 +00:00
c9bbd3c993
added qse_htl_yanknode(), qse_htl_upyank().
...
added qse_raddic_deletevendorbyname(), qse_raddic_deletevendorbyid()
2017-12-11 08:48:06 +00:00
4266d8026c
added qse_raddic_addvendor(), qse_raddic_findvendorbyvalue(), qse_raddic_findvendorbyname()
2017-12-08 08:12:24 +00:00
5db7ddc770
added another new hash table implementation based on fr
2017-11-30 05:46:42 +00:00
02f3adf134
added QSE_LIBCALL?() macros
2017-10-27 08:05:41 +00:00
25de06d195
added AppRoot::chroot()
2017-10-27 06:56:31 +00:00
38102f659e
removed a unneeded colon in inline assembly that caused compilation failure with old gcc 3.X
2017-10-19 03:12:24 +00:00
88e67887b7
fixed a wrong check when setting a log target
2017-09-29 00:32:31 +00:00
3478885962
added qse_get_highest_fd(), qse_close_open_fds_using_proc()
...
added QSE::AppRoot::daemonize()
2017-09-26 13:49:16 +00:00
4e097466ae
improved the file path management in the logging function
2017-09-19 14:08:46 +00:00
db421d4208
fixed prototypes for qse_wcs_vfmt() and qse_wcs_vfcat()
2017-09-18 04:16:06 +00:00
2304a0a5bb
enhanced the logging functions to support priority masking and added/changed helper functions to convert betwee numeric values and string values
2017-09-18 04:06:58 +00:00
c5ac9558ab
change the logging function to support priority masking
2017-09-18 02:46:54 +00:00
cdc64c347f
fixed compilation issues on netbsd i386
2017-09-17 12:29:59 +00:00
e8b59346a7
fixed wrong calls to math_log in the awk math module
2017-09-16 10:41:25 +00:00
36db3c8623
added fallback match::log2() code for platforms lacking log2
2017-09-16 09:48:00 +00:00
a7bc6a6eb2
fixed some bugs in formatting output function
2017-09-16 09:16:15 +00:00
2cc8894570
renamed some sio functions
2017-09-16 08:54:25 +00:00
3ac8bc1f49
added math::log2() to awk.
...
fixed some bugs in syslog handling
2017-09-16 07:01:03 +00:00
dae0fc8adb
added a tester for logging functions
2017-09-16 04:10:14 +00:00
bcc9da7aca
fixed log functions for the WCHAR mode
2017-09-16 03:57:54 +00:00
33436ab0fb
added Ixx length specifier to the formatting function.
...
improved the system log interface in the logging function
2017-09-16 03:21:30 +00:00
93cc3d6da4
added some logging functions
2017-09-14 18:19:51 +00:00
aa6a41c009
refactored code a little bit
2017-09-13 14:04:01 +00:00
936426de42
fixed compilation issues on solaris 8
2017-09-09 15:03:55 +00:00
70f8765ada
added a new check for pthread_mutex_timedlock() into configure.ac
2017-09-09 13:07:24 +00:00
dc53a74542
added the seed crypto function
2017-09-08 16:15:15 +00:00
8b40ed630c
added some convenience functions to QSE::LinkedList, QSE::HashTable, and QSE::HashList
2017-09-04 12:32:48 +00:00
3cd745c181
removed a unneeded macro argument from qse_ethwadtostr()
2017-09-02 17:28:35 +00:00
375ede4a6a
added convienience functions to manipulate the first items and the last items in the array class
2017-08-31 16:07:16 +00:00
eb5e5c10d3
checked the no-buffer condition in some string functions
2017-08-31 11:20:50 +00:00
5846d6c1a8
added move constructors and move assignement operators to string classes
2017-08-31 09:53:50 +00:00
559f965aa5
added to StrBase a special constructor that doesn't allocation a buffer.
...
added PtrString classes
added removeNode to HashList and HashTable.
added findNode to HashTable
2017-08-30 13:50:02 +00:00
211f5b014e
added String::truncate() and related functions.
...
started adding radius dictionary file reader. incomplete yet
2017-08-29 09:09:51 +00:00
25e49a4526
added md5 and radius message handling functions and raised the version number to 0.7.0
2017-08-28 14:22:02 +00:00
b0008974c3
Added ethernet address conversion functions
2017-08-28 10:25:54 +00:00
1f9632b151
fixed header file inclusion of signal.h in aio-pro.c
2017-05-04 01:12:19 +00:00
5630bd63f0
changed qse_awk_stdmodXXX() functions to avoid accessing extension area such that StdAwk doesn't get bitten when it called them
2017-05-03 03:41:00 +00:00
1e19713270
added mysql build options for future use
2017-05-02 01:17:03 +00:00
51c77b53f7
fixed the potential overflow issue that would never happen in various binary serach functions
2017-05-02 01:15:12 +00:00
b96113159b
fixed the potential overflow issue that would never happen in various binary serach functions
2017-05-02 01:14:32 +00:00
8093f20372
changed htb.c to help align the value pointer on a word boundary
2017-04-28 14:41:31 +00:00
f3f5d38fc6
changed rbt.c to help align the value pointer on a word boundary
2017-04-28 14:40:10 +00:00
237d46483c
fixed QSE_COUNTOF()
2017-04-07 14:20:10 +00:00
f28fee48cc
added AT_SYMLINK_NOFOLLOW availability check into lib/si/fs-attr.c
2017-03-20 10:04:52 +00:00
d00bb12e34
fixed a wrong file name in lib/si/Makefile.am
2017-03-20 09:46:45 +00:00
1d90343b39
removed unneeded ltdl files
2017-02-11 05:04:55 +00:00
00bae5b613
added str::tonum() to awk
2017-02-11 05:04:13 +00:00
87060d2121
added a missed file
2017-01-25 06:31:33 +00:00
33546fb6d7
changed nwio to use poll if available instead of select
2017-01-25 06:30:43 +00:00
2151e2997f
changed HAVE_SYS_POLL_H to HAVE_POLL_H in httpd-std.c
2017-01-25 06:03:21 +00:00
2efe909dba
changed the threshold value for FD_SETSIZE check
2017-01-25 05:40:49 +00:00
1fffa0324e
changed the writability checker to use poll() to handle a high file descroptor in httpd-std.c.
...
added server.backlog-size option for httpd servers
2017-01-25 05:28:02 +00:00
cf0956cad6
changed qse_fs_cpfile() to copy a directory that has been copied already
2016-12-18 17:12:21 +00:00