Commit Graph

1685 Commits

Author SHA1 Message Date
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