Logo white

Peter M. Groen / FlashMQ

Sign in
  • Sign in
  • Project
  • Files
  • Commits
  • Network
  • Graphs
  • Milestones
  • Issues 0
  • Merge Requests 0
  • Labels
  • Wiki
  • Commits 453
  • Compare
  • Branches 1
  • Tags 0
  • FlashMQ
07 Aug, 2022
1 commit
  • Fix QoS reduction when one subscriber has lower QoS level ...
    d594f67b
    Was caught by refactor testNotMessingUpQosLevels away from QMQTT, which
    didn't trip on this bug.
    Wiebe Cazemier authored
    2022-08-07 12:34:06 +0200  
    Browse Code »

05 Aug, 2022
1 commit
  • Use writeString() in db files
    c986edcf
    Wiebe Cazemier authored
    2022-08-05 16:15:37 +0200  
    Browse Code »

02 Aug, 2022
1 commit
  • Add simple test for user properties
    684f5eb8
    Wiebe Cazemier authored
    2022-08-02 17:08:44 +0200  
    Browse Code »

01 Aug, 2022
3 commits
  • Version 0.11.4
    f5c83951
    Wiebe Cazemier authored
    2022-08-01 20:11:19 +0200  
    Browse Code »
  • Fix unnecessary QoS packet creation ...
    a3d29f51
    The extraneous creation would happen when multiple subscribes at
    different QoS levels happen.
    Wiebe Cazemier authored
    2022-08-01 20:07:49 +0200  
    Browse Code »
  • Fix QoS reduction of queued messages ...
    4a16d48b
    Also add a test to test all scenarios.
    
    This also fixes session clean_start, which was never done since the
    MQTT5 refactor to clean_start (vs clean session).
    Wiebe Cazemier authored
    2022-08-01 20:07:49 +0200  
    Browse Code »

31 Jul, 2022
14 commits
  • Give testMqtt5DelayedWill a bit more time ...
    abe7fa16
    It timed out sometimes. When it works, it doesn't even take longer,
    because it's just the timeout.
    Wiebe Cazemier authored
    2022-07-31 17:35:08 +0200  
    Browse Code »
  • Fix QoS reduction on retained messages ...
    958aeb62
    It was caught by an assert. In release mode, this simply meant
    subscribing to 0 still gave you QoS messages.
    Wiebe Cazemier authored
    2022-07-31 17:19:15 +0200  
    Browse Code »
  • Fix Session::requiresQoSQueueing() ...
    5a4b57de
    This was old debug code.
    
    The effect is that QoS now doesn't do unnecessary queueing.
    Wiebe Cazemier authored
    2022-07-31 17:18:26 +0200  
    Browse Code »
  • Fix incorrect assert about QoS on wrong object ...
    e3a794e4
    Fixes assertion error in debug only.
    Wiebe Cazemier authored
    2022-07-31 16:34:04 +0200  
    Browse Code »
  • Stablized test_retained_tree ...
    0cc6610a
    It was flakey. I also ported it to the new test client.
    Wiebe Cazemier authored
    2022-07-31 16:13:34 +0200  
    Browse Code »
  • Bump persistence files to version 3 ...
    2677a728
    They now contain sender info of publishes.
    Wiebe Cazemier authored
    2022-07-31 15:29:41 +0200  
    Browse Code »
  • Tests for saving clientid and username for publishes
    cd447414
    Wiebe Cazemier authored
    2022-07-31 15:29:41 +0200  
    Browse Code »
  • Evaluate ACL of delayed publishes too ...
    55108074
    This requires storing the clientid and username in the Publish object.
    Wiebe Cazemier authored
    2022-07-31 15:29:41 +0200  
    Browse Code »
  • Change topic splitting to lazy evaluation ...
    e61b7fbf
    Only split when they're needed, instead of pre-determining whether I'll
    need the subtopics.
    
    This makes the coming refactor of authentication easier.
    
    Also treated user properties with the same brush a bit. Downside: it now
    always assigns user properties to newly constructed publish objects,
    even if they are not needed (because the generated packet may only be
    needed for writing to the client's output buffer). But determining the
    flow of when and when not they'll be needed is impossible with the
    coming authentication refactor.
    Wiebe Cazemier authored
    2022-07-31 15:29:41 +0200  
    Browse Code »
  • Version 0.11.3
    9a946d14
    Wiebe Cazemier authored
    2022-07-31 12:47:49 +0200  
    Browse Code »
  • Disable thread pinning ...
    e0d63344
    It's probably not good for anything.
    Wiebe Cazemier authored
    2022-07-31 12:34:41 +0200  
    Browse Code »
  • Fix not being able to re-enable logging on config reload
    b03e739f
    Wiebe Cazemier authored
    2022-07-31 12:34:41 +0200  
    Browse Code »
  • Set systemd LimitNOFILE to infinite
    171f3d89
    Wiebe Cazemier authored
    2022-07-31 12:34:41 +0200  
    Browse Code »
  • Fix deb maintainer scripts re-enabling a disabled service on upgrade
    b2a0ffde
    Wiebe Cazemier authored
    2022-07-31 12:34:41 +0200  
    Browse Code »

28 Jul, 2022
3 commits
  • Fix comparison between signed and unsigned warning in test
    7ab8deef
    Wiebe Cazemier authored
    2022-07-28 21:36:43 +0200  
    Browse Code »
  • Fix packet order in subscribing to topic with retained messages ...
    4fcca574
    The order packets would (mostly) arrive, is 'retained publish', then
    'sub ack'. This is now fixed.
    
    This also stablizes test_retained_changed(). The test was also
    refactored to use the new test client.
    Wiebe Cazemier authored
    2022-07-28 21:36:43 +0200  
    Browse Code »
  • Add test for outgoing topic aliases
    4526f0bd
    Wiebe Cazemier authored
    2022-07-28 21:36:43 +0200  
    Browse Code »

24 Jul, 2022
3 commits
  • Add test for incoming topic aliases
    c6c22b16
    Wiebe Cazemier authored
    2022-07-24 21:38:31 +0200  
    Browse Code »
  • Run tests on different port ...
    58550eac
    This prevents confusion when another instance of FlashMQ is running.
    
    This is not the final way. For instance, when SSL connections will also
    be tested, this won't work anymore.
    Wiebe Cazemier authored
    2022-07-24 20:15:45 +0200  
    Browse Code »
  • Add fuzz-helper.sh
    f19d8d42
    Wiebe Cazemier authored
    2022-07-24 17:01:40 +0200  
    Browse Code »

23 Jul, 2022
2 commits
  • Fix fuzz mode ...
    9a9cd83b
    A recent refactor caused this fuzz mode to crash because the thread data
    wasn't set.
    Wiebe Cazemier authored
    2022-07-23 22:59:06 +0200  
    Browse Code »
  • Fix missing dependency in Dockerfile
    adc87601
    Patric Stout authored
    2022-07-23 14:21:12 +0200  
    Browse Code »

11 Jul, 2022
1 commit
  • Version 0.11.2
    84e52da2
    Wiebe Cazemier authored
    2022-07-11 20:16:25 +0200  
    Browse Code »

10 Jul, 2022
2 commits
  • Prevent insertion of null clients in client list ...
    8934a4bc
    There was a null dereference on a call of member function
    Client::sendOrQueueWill(). Null clients shouldn exist in the list and
    this was the only place it could have come from. But, I never got proof.
    Wiebe Cazemier authored
    2022-07-10 17:33:10 +0200  
    Browse Code »
  • Prevent accidental deletion of wrong client in removeQueuedClients ...
    e27053fa
    No issues were reported, but I noticed the theoretical issue.
    Wiebe Cazemier authored
    2022-07-10 16:03:27 +0200  
    Browse Code »

08 Jul, 2022
2 commits
  • Version 0.11.1
    291b1894
    Wiebe Cazemier authored
    2022-07-08 18:08:03 +0200  
    Browse Code »
  • Fix SSL crash on SSL_write retry ...
    cc5f85e1
    When SSL wants the app to retry, it stands to reason that the local
    write buffer needs to be grown (read: reallocated) to hold the
    application bytes. At that point, the buffer is no longer where it was
    originally.
    
    This fixes segfaults.
    Wiebe Cazemier authored
    2022-07-08 18:06:55 +0200  
    Browse Code »

03 Jul, 2022
7 commits
  • Version 0.11.0
    8609c607
    Wiebe Cazemier authored
    2022-07-03 18:25:08 +0200  
    Browse Code »
  • Allow for any websocket protocol containing mqtt ...
    c24becf2
    I've see various variations, like mqtt and mqttv31. The 3.1.1 specs are
    clear what it should be, but the 3.1 specs aren't. So, allowing
    anything with mqtt in it.
    Wiebe Cazemier authored
    2022-07-03 16:23:08 +0200  
    Browse Code »
  • Use writeString helper in mqttpacket
    1ca1bdf6
    Wiebe Cazemier authored
    2022-07-03 15:23:54 +0200  
    Browse Code »
  • Add tests for will
    27b65bef
    Wiebe Cazemier authored
    2022-07-03 14:38:34 +0200  
    Browse Code »
  • Add packet based test client ...
    56d9c510
    Now that parsing and handling of packets is separated, we can use the
    main code to parse packets in the new FlashMQTestClient. This allows
    great flexibility in inspecting the server response in a flexible
    manner.
    
    We now also have the ability to make tests for MQTT5 features.
    Wiebe Cazemier authored
    2022-07-03 14:38:34 +0200  
    Browse Code »
  • Separate QoS 2 parsing and handling
    483db298
    Wiebe Cazemier authored
    2022-07-03 14:38:18 +0200  
    Browse Code »
  • Add parsePubAckData() ...
    5fb96542
    Will be used for the test client I have in mind.
    Wiebe Cazemier authored
    2022-07-03 14:38:18 +0200  
    Browse Code »