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
20 Mar, 2021
40 commits
  • Working on expiring sessions ...
    33ef5bdf
    This includes a timer mechanism.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Add SSL support ...
    9e33ebda
    It also contains some related improvements that I needed:
    
    * Show disconnect reason
    * Fix the while condition for doing write() to avoid an unnecessary call
    * Config reloading logic
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fix tests
    327f0c38
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • QoS on retained messages
    8094510f
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • QoS message queue is a list, for easy ordering
    f8667722
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Store QoS in subscription and use it ...
    6141bbcc
    Connected to this is preventing duplicate subscriptions. It's a bit
    unclear what to do when you get a subscription for the same topic with a
    different QoS? Change the Qos? Ignore?
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • QoS 1, 80% ...
    760ec588
    Also includes fixes to packet parsing that I couldn't make a separate
    commit for.
    
    When it comes to QoS 1, these things are still left, off the top of my
    head:
    
    - vector for qos queue? It helps with ordering and is CPU cache friendly.
    - Store subscription QoS.
    - Do retained messages have QoS?
    - Give session client's name, to access it later.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Remove old junk
    86d368a3
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Improve disconnect handling
    a0070c99
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fix race condition in thread creation
    8ddb61d6
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Simple anonymous handling
    260643dc
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Settings and logger stuff ...
    d55f39d1
    Also reloading of settings, which re-opens the log file.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Simple protection against growing write buffer
    5d84ff29
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Sessions and 'clean session' works
    862f0933
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Store clients as sessions ...
    3cb1fae8
    In preparation for clean session and qos.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Disconnect client with existing ID
    43df4fc2
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Make sure MqttPacket copy constructor is not used
    68bd5080
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Working auth with plugin
    462fb2ed
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Auth plugin init works ...
    543d4451
    It can be defined in the config file, along with options.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Start of auth plugin. ...
    1b9f0978
    I kind of need a config file parser first, so I'm going to make that.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Start of simple logger
    4315fb5b
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Optimize by having seperate leafs for + and # ...
    4ee42838
    This saves mildly costly calls to find().
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Use vector for splitting topic path ...
    0ac76185
    It's a little faster.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fixed crash in keep-alive checking
    4bbc76ec
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Small optimization in publishing
    b4a28abf
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Weak pointers to clients in subscription store
    cffcf3cf
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Simple keep-alive mechanism
    f8e062bf
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Remove old eventfd on thread concept ...
    fce0beff
    We use epoll now to change readiness.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Workaround Qt's COMPARE warnings
    321015d4
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Reduce client buffers periodically ...
    497bc9eb
    The test cases give a bunch of warnings, but that's the COMPARE macro's
    fault. Let's see what to do...
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fix bug in max packet size and big packet handling ...
    a0596b6e
    The MQTT docs showed a wrong condition for checking malformed packets.
    
    And, we have to grow buffers to MAX_PACKET_SIZE, otherwise we can't
    process. I still have some inteligent buffer shrink logic in mind.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fix write buffer bug: wasn't increased enough ...
    502ffeec
    There still is a bug: writing a very big packet. I wrote the test case
    already.
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Retained messages tests, plus fix
    0262ae00
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Circbuf for write buffer
    121e04de
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Use proper circular buffer for reading
    ae95e6dc
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • stowing circular buffer work
    ae9b2060
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fiddle with recursion order for compiler TCO
    7db8bdff
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Fix dumb read lock typo
    a75812d3
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Temporary ulimit stuff
    adbc7b3f
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »
  • Handle epoll errors
    f8944b06
    Wiebe Cazemier authored
    2021-03-20 19:02:25 +0100  
    Browse Code »