Permalink
Commits on Aug 26, 2016
  1. @azat

    Merge branch 'release-2.1.6-beta-pull'

    * release-2.1.6-beta-pull:
      Bump version to 2.1.6-beta everywhere
      ChangeLog: Add brief notes
      Update changelog for 2.1.6-beta (ugh, pretty huge)
      Update AUTHORS section in README
    azat committed Aug 26, 2016
  2. @azat

    Bump version to 2.1.6-beta everywhere

    - cmake basic
    - cmake detecting from git -- event_fuzzy_version_from_git()
    - autotools
    - win32
    - appveyor
    azat committed Jul 13, 2016
  3. @azat

    ChangeLog: Add brief notes

    azat committed Jul 5, 2016
  4. @azat

    Update changelog for 2.1.6-beta (ugh, pretty huge)

    Changes for:
    - 2.1.5-beta: 118
    - 2.1.6-beta: 350
    
    We should really hurry with the release!
    azat committed Jul 4, 2016
  5. @azat

    Update AUTHORS section in README

    P.S. "Sebastian Hahn" was declared two times.
    azat committed Aug 7, 2016
  6. @zonr @azat

    Fix evhttp_uriencode() regression.

    http_uriencode_test() (in test/regress_http.c) has been failed after
    72afe4c as "hello\0world" is encoded to "hello" instead of
    "hello%00world". This is because of a misplaced overflow check which
    causes the non-negative "size" specified in parameter being ignored in
    within-bound URI.
    
    Fixes: #392
    zonr committed with azat Aug 24, 2016
Commits on Aug 14, 2016
  1. @ellzey

    removed unused vars

    ellzey committed Aug 14, 2016
  2. @ellzey

    pointer overflow checks for evhttp_uriencode

    Check to make sure pointer math is all OK.
    ellzey committed Aug 14, 2016
Commits on Aug 11, 2016
  1. @azat

    tests: use waitpid(..., WNOWAIT) to fix failing of main/fork under so…

    …laris
    
    According to solaris docs:
      "One instance of a SIGCHLD signal is queued for each child process whose
      status has changed. If waitpid() returns because the status of a child
      process is available, and WNOWAIT was not specified in options, any pending
      SIGCHLD signal associated with the process ID of that child process is
      discarded. Any other pending SIGCHLD signals remain pending."
    
    And interesting thing that it works if you add sleep(1) before waitpid(), and
    also if you run with --verbose (some race or what).
    
    But linux doesn't support WNOWAIT in waitpid() so add detection into
    cmake/autotools.
    
    Fixes: #387
    Link: https://bugzilla.redhat.com/show_bug.cgi?id=840782
    azat committed Aug 11, 2016
  2. @azat

    test: replace sleeping with syncing pair in main/fork

    About this syncing pair:
    - read endpoint, must be blocked, to make it a checkpoint or smth like this
    - write endpoint, must be nonblocking, to avoid readcb hung
    
    Refs: #387
    azat committed Aug 11, 2016
  3. @azat

    travis: split long lines, and make it cleaner

    azat committed Aug 11, 2016
Commits on Aug 10, 2016
  1. @azat

    travis: fix autotools on osx by reinstalling libtool

    azat committed Aug 10, 2016
  2. @azat

    be_sock: handle readv() returns ECONNREFUSED (freebsd 9.2)

    During testing sometimes bufferevent/bufferevent_connect_fail_eventcb fails,
    and after some digging I found that this was the case when connect() doesn't
    return ECONNREFUSED immediately, and instead next operation will return it (in
    our case evbuffer_read()->readv(), needless to say that after this
    bufferevent_writecb() called and it checks error with getsockopt() but of
    course it doesn't return any error), so this patch checks "errno" after
    "readv()" and installs "bufev::connection_refused" flag, to handle this from
    writecb and only once.
    
    Fixes: bufferevent/bufferevent_connect_fail_eventcb
    Fixes: bufferevent/bufferevent_connect_fail_eventcb_defer
    Refs: #388
    azat committed Aug 10, 2016
  3. @azat

    test/http: do not run tests that based on backlog filling (freebsd)

    I cannot find any other solution for now, so simply ignore them for now, we
    should think about normal fix for this.
    
    Refs: #388
    azat committed Aug 10, 2016
  4. @azat
  5. @azat
  6. @azat

    Fix getaddrinfo under solaris (for multiprotocol case)

    During testing on solaris 11.3, util/getaddrinfo failed at:
      memset(&hints, 0, sizeof(hints));
      hints.ai_flags = EVUTIL_AI_NUMERICHOST;
      r = evutil_getaddrinfo("1.2.3.4", NULL, &hints, &ai);
      tt_assert(ai_find_by_protocol(ai, IPPROTO_TCP));
    
    And this is because solaris's getaddrinfo() returns:
    $6 = {
      ai_flags = 32,
      ai_family = 2,
      ai_socktype = 0,
      ai_protocol = 0, <-- no proto
      ai_addrlen = 16,
      ai_canonname = 0x0,
      ai_addr = 0x815d658,
      ai_next = 0x0 <-- nothing else
    }
    
    So we should emulate this too.
    
    Plus introduce helper that will search through all results, not only first one.
    
    Fixes: util/getaddrinfo
    Fixes: #354
    Azat Khuzhin committed with azat May 9, 2016
Commits on Aug 9, 2016
  1. @azat

    cmake/solaris: set CMAKE_REQUIRED_LIBRARIES to fix functions detections

    Otherwise we will not detect next functions for instance:
    - gethostbyname_r # and related
    
    And now both autotools/cmake builds passes all regress tests in basic env (on
    solaris of course).
    
    Fixes: dns/client_fail_requests_getaddrinfo
    azat committed Aug 9, 2016
  2. @azat

    cmake/solaris: fix building (link with socket,nsl)

    azat committed Aug 9, 2016
  3. @azat

    Merge branch 'appveyor-cmake-v6'

    This patch set introduces matrix for appveyor and fixes bugs related to win32,
    during debugging this matrix. This should greatly reduce number of work for
    making a release ('check under windows' part only).
    
    Right now tests on appveyor still failes in summary, but we should dig into
    problems, not hide them.
    
    Test matrix looks like this:
    - autotools
    - autotools --disable-openssl
    - autotools --disable-thread-support
    - autotools --disable-debug-mode
    - autotools --disable-malloc-replacement
    - cmake
    - cmake -DEVENT__DISABLE_OPENSSL=ON
    - cmake -DEVENT__DISABLE_THREAD_SUPPORT=ON
    - cmake -DEVENT__DISABLE_DEBUG_MODE=ON
    - cmake -DEVENT__DISABLE_MM_REPLACEMENT=ON
    - cmake -DEVENT__ENABLE_VERBOSE_DEBUG=ON
    - cmake -DCMAKE_C_FLAGS='-DUNICODE -D_UNICODE'
    And takes 90min (was 7min, and this is the sad part).
    
    * appveyor-cmake-v6:
      test/ssl: use send()/recv()/EVUTIL_ERR_RW_RETRIABLE()/EVUTIL_SOCKET_ERROR() to fix win32
      test/https_basic: increase timeout for complete write (fixes win32)
      cmake: check for ZLIB_INCLUDE_DIR, since we can have only library without headers
      autotools/win32: fix searching ssl library
      appveyor/autotools: link with openssl by passing LDFLAGS/CFLAGS
      appveyor: image already had openssl installed
      cmake/win32: do not compile regress_thread on -DEVENT__DISABLE_THREAD_SUPPORT=ON
      cmake/win32: do not compile evthread_win32 on -DEVENT__DISABLE_THREAD_SUPPORT=ON
      appveyor: check -DUNICODE -D_UNICODE according to ReleaseChecklist (cmake only)
      cmake: fix -DEVENT__ENABLE_VERBOSE_DEBUG (typo on -DUSE_DEBUG)
      test: fix building with --disable-thread-support under win32
      cmake: do not use stderr for notifications/version-info
      autoconf: fix --disable-thread-support build under win32
      appveyor: ignore failure of mingw-get
      appveyor: drop shallow_clone, since we use tags for detecting version in cmake
      appveyor: support cmake & autotools using build matrix (like travis-ci has)
    
    Fixes: #364
    azat committed Aug 9, 2016
  4. @azat
  5. @azat

    test/https_basic: increase timeout for complete write (fixes win32)

    Otherwise on win32 we got 2, but test is ok, some timings issue.
    
    Introduced-in: c968eb3
    Fixes: https://ci.appveyor.com/project/azat/libevent/build/2.1.5.107/job/k70our1xdp0ym4dm#L1906
    azat committed Aug 9, 2016
  6. @azat
  7. @azat
  8. @azat

    appveyor/autotools: link with openssl by passing LDFLAGS/CFLAGS

    This never works, hence green tests in production. and now it works:
    https://ci.appveyor.com/project/azat/libevent/build/2.1.5.100/job/eib4xqfb7d3ruo16
    (look by /"evthread_win32.c")
    azat committed Aug 8, 2016
  9. @azat

    appveyor: image already had openssl installed

    Fixes messages like "Version mismatch for openssl: compiled with 1000201f but
    running with 1000208f" [1].
    
    According to next link:
      http://help.appveyor.com/discussions/questions/1132-openssl-installation-issues
    Refs: appveyor/ci#576
    [1]: https://ci.appveyor.com/project/azat/libevent/build/2.1.5.95/job/dcy9cfoj3rfo4gdh
    azat committed Aug 8, 2016
  10. @azat
  11. @azat

    cmake/win32: do not compile evthread_win32 on -DEVENT__DISABLE_THREAD…

    …_SUPPORT=ON
    
    There is duplicated "evthread_win32.c" appending to ${SRC_CORE} list, leave
    only one that under if EVENT__DISABLE_THREAD_SUPPORT
    
    Fixes: https://ci.appveyor.com/project/azat/libevent/build/2.1.5.96/job/44q3rgifasny7gek
    azat committed Aug 8, 2016
  12. @azat
  13. @azat

    cmake: fix -DEVENT__ENABLE_VERBOSE_DEBUG (typo on -DUSE_DEBUG)

    Fixes: 8b228e2 ("Lot's of cmake updates")
    azat committed Aug 7, 2016
  14. @azat
  15. @azat

    cmake: do not use stderr for notifications/version-info

    For all except "STATUS" message() will write to stderr, and this also includes
    case when you does not have <mode> at all. Plus for every message in stderr
    powershell generates exception and make appveyor fails.
    
    Fixes: https://ci.appveyor.com/project/azat/libevent/build/2.1.5.85/job/i10k7m0t80330mtr
    azat committed Aug 7, 2016
  16. @azat
  17. @azat

    appveyor: ignore failure of mingw-get

    Since according to doc [1], appveyour will fail the build on every powershell's
    exception:
      "PowerShell script is considered successful if it finishes without exception."
    
    [1]: https://www.appveyor.com/docs/build-configuration#powershell
    azat committed Aug 7, 2016
  18. @azat