| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
underlying library refuses to initialise.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1751783 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
pipes to be created, each in a different pool.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1734816 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
overlapping tables.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1734004 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
| |
* network_io/unix/sockopt.c (apr_socket_opt_set): Implement
APR_SO_FREEBIND on Linux with IP_FREEBIND
* test/testsock.c (test_freebind): Add test case.
Submitted by: Ashley GC, jkaluza, jorton
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1733451 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
the new apr_cstr_skip_prefix().
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1728957 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
Found no other svn_cstring_ test cases to import, so skipping
the creation of a testcstr.c module for the time being.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1727175 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
in cases where the "short" name variant is actually longer than
the "long" or "true" name.
Patch submitted bu Bert Huijben <rhuijben a.o>.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1685929 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1675656 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1675644 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
Instead, define and use ecomp() which bases uniqueness on both elem's a and b,
and test it with multiple duplicates inserted/found/removed in arbitray order.
Improve comment on when/how these compare functions could be used in real apps.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1672495 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
The height of a skiplist is always at least one, for the top node,
even if our implementation may delay its creation on the first insert
or delete it on the last remove (for optimization purpose).
This also helps apr_skiplist_remove() to never return zero (not found)
when it deletes the last node.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1672366 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
Fix insert_compare() returning NULL on the very first insertion (top is NULL).
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1672354 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The apr_skiplist_last[_compare]() functions return the last matching element
(duplicate) whereas the existing apr_skiplist_find[_compare]() return the first
one encountered during the walk.
The function apr_skiplist_remove_node() function allows to remove an element
given its node, e.g. an iterator from apr_skiplist_{getlist,previous,next}().
The goal is to have a reliable way to find (and remove) any element having a
unique address/pointer, by starting with the last duplicate and then iterating
on the previous ones until the match (see example in testskiplist.c).
apr_skiplist_last() is much more efficient than apr_skiplist_first() would be,
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1671957 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
real event occurs AND apr_pollset_wakeup() has been called.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1671514 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
This test was never implemented if !APR_HAS_FORK, but the
capability check was error prone.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1671386 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1671292 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667901 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For proc mutexes, the new mechanism APR_LOCK_DEFAULT_TIMED usable at creation time
allows for the best mechanism to be elected (unixes: 1 to 3, or specific: 4 to 7):
1. PROC_PTHREAD if pthread_mutex_timedlock() and pthread_mutex_set_robust_np()
are both available,
2. SYSV if semtimedop() is availale,
3. POSIXSEM if sem_timedwait() is available,
4. BeOS' acquire_sem_etc() if available,
5. NetWare falls back to apr_thread_mutex_timedlock() as for others functions,
6. OS2's DosRequestMutexSem(),
7. Windows' WaitForSingleObject().
Otherwise (like when fcntl and flock only are availble, if that's ever possible),
APR_ENOTIMPL is returned.
For thread mutexes, the new flag APR_THREAD_MUTEX_TIMED, usable at create()
time still, allows to switch to an implementation using a condition variable
and apr_thread_cond_timedwait() when if no native mechanism is available (eg.
NetWare, pthreads but without pthread_mutex_timedlock() available).
On windows, this initializes a WaitForSingleObject()able handle (Mutex) instead
of the fastest (but not timeout-able) CRITICAL_SECTION used by default.
All apr_{thread,proc,global}_mutex_timedlock() functions can take a relative or
absolute time, thanks to the last (boolean) argument.
Test suite updated accordingly.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667900 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667420 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
support timedout operations. PR 56951.
Signed-off-by: Anthony Minessale <anthm freeswitch.org>
Signed-off-by: Travis Cross <tc traviscross.com>
Reviewed/Modified: ylavic
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667073 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1666877 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
apr_skiplist_remove() and apr_skiplist_find() to work.
It also shows that a single compare function can be used for add semantic
with apr_skiplist_insert() (and unique pointers).
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1666611 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
We want to test the real apr_skiplist_add() in trunk.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1666605 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1666602 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
and hence add-next-to-any-existing semantic to apr_skiplist_add(), getting rid
of apr_skiplist_addne().
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1666411 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
Allows to get an entry, or if it does not exist set a new one
in the same pass.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1665952 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
When removing the last node, we have top = bottom = NULL,
and must set topend = bottomend = NULL too.
Also fix test from r1664471 according to r1664911.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664958 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664904 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664901 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664900 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664471 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664467 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
are added *after* each other, not before
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1664406 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
of NSS detect key sizes correctly, leading to test failures.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1626561 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1613114 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
in O(1), and apr_skiplist_set_preheight() to configure preheight mode.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1611515 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1611110 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
Fix gcc -Wparentheses warnings
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1611004 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1604597 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
| |
Takashi Sato.
Submitted By: Takashi Sato, covener
Committed By: covener
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1604596 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1590624 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
escaping, allowing the option to escape both at the same time.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1588937 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
as described by RFC4514 and RFC4515 respectively.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1588878 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
Submitted by: Yann Ylavic <ylavic.dev gmail.com>
Reviewed by: trawick
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1587543 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to play with, to prevent weird data interdependencies.
* test/testdir.c
(struct thread_data): Encapsulates abts_case and per-thread pool.
(thread_mkdir_func): Thread data is thread_data, not abts_case.
(test_mkdir_recurs_parallel):
Create a separate pool and thread data struct for each thread.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1559975 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file_io/win32/dir.c
(dir_make_parent): When parent just got created, continue creating children.
(apr_dir_make_recursive): Only handle EEXIST of the requested directory as
success, not any ancestor.
Patch by: rhuijben
* test/testdir.c
(test_mkdir_recurs_parallel): New multithreaded test case.
(test_removeall): Clean up after test_mkdir_recurs_parallel.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1559873 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1559343 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1552849 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1552846 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
(as seen on FreeBSD 10).
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1551650 13f79535-47bb-0310-9956-ffa450edef68
|