<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mqtt, branch master</title>
<subtitle>A simple MQTT library written in C</subtitle>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/'/>
<entry>
<title>Update amalgamation</title>
<updated>2018-01-16T15:58:48+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2018-01-16T15:58:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=f9a5e782ab8905d3a580456d174549f0223a6ba0'/>
<id>f9a5e782ab8905d3a580456d174549f0223a6ba0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix keepalive handling</title>
<updated>2018-01-16T15:52:49+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2018-01-16T15:52:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=fe74d0707215320a23ed10f989e87437c4f7ea4d'/>
<id>fe74d0707215320a23ed10f989e87437c4f7ea4d</id>
<content type='text'>
Previously the code would send pings only when SocketSelect() would
timeout. This was not working when a client was subscribed to a topic
and would receive periodic messages but wouldn't itself send anything.
This meant that SocketSelect() wouldn't timeout at any point and we
wouldn't execute the check for sending a PINGREQ.

The fix is to do the check for last sent packet before calling
SocketSelect() so that if we haven't been sending anything for a while,
we really send the PINGREQ.

Fixes #10
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously the code would send pings only when SocketSelect() would
timeout. This was not working when a client was subscribed to a topic
and would receive periodic messages but wouldn't itself send anything.
This meant that SocketSelect() wouldn't timeout at any point and we
wouldn't execute the check for sending a PINGREQ.

The fix is to do the check for last sent packet before calling
SocketSelect() so that if we haven't been sending anything for a while,
we really send the PINGREQ.

Fixes #10
</pre>
</div>
</content>
</entry>
<entry>
<title>Update amalgamation</title>
<updated>2017-03-18T07:39:08+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-18T07:39:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=296da7a73501fb7ce8c0f4c0e18060ebf7eada97'/>
<id>296da7a73501fb7ce8c0f4c0e18060ebf7eada97</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'the-great-refactor'</title>
<updated>2017-03-18T07:29:19+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-18T07:29:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=7aeef53b089272f4633cc40512296bfd884a58d4'/>
<id>7aeef53b089272f4633cc40512296bfd884a58d4</id>
<content type='text'>
* the-great-refactor:
  Add big_message_test
  Fix publish message serialization
  Modify the code to use nonblocking sockets
  Fix indentation
  Free userName and password in MqttClientFree()
  Add forgotten files
  Massive refactoring of the internals
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* the-great-refactor:
  Add big_message_test
  Fix publish message serialization
  Modify the code to use nonblocking sockets
  Fix indentation
  Free userName and password in MqttClientFree()
  Add forgotten files
  Massive refactoring of the internals
</pre>
</div>
</content>
</entry>
<entry>
<title>Add big_message_test</title>
<updated>2017-03-18T07:19:29+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-18T07:19:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=2c76b0da9e0aba2211d5b4a8e51c79e47ad9b6c8'/>
<id>2c76b0da9e0aba2211d5b4a8e51c79e47ad9b6c8</id>
<content type='text'>
The test tries to publish and receive 3.5 megabyte message.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The test tries to publish and receive 3.5 megabyte message.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix publish message serialization</title>
<updated>2017-03-18T07:18:08+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-18T07:18:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=cec17d970b99058da216ec194d19c5421802b78e'/>
<id>cec17d970b99058da216ec194d19c5421802b78e</id>
<content type='text'>
All of the publish messages regardless of qos contained the message id.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
All of the publish messages regardless of qos contained the message id.
</pre>
</div>
</content>
</entry>
<entry>
<title>Modify the code to use nonblocking sockets</title>
<updated>2017-03-18T07:17:16+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-18T07:17:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=03f7cae60919a04ff0ebc87baf3b51b9bbb1776f'/>
<id>03f7cae60919a04ff0ebc87baf3b51b9bbb1776f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix indentation</title>
<updated>2017-03-06T20:19:18+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-06T20:19:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=d97c786dbd30b4349d22b41c657f69a335f3d77a'/>
<id>d97c786dbd30b4349d22b41c657f69a335f3d77a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Free userName and password in MqttClientFree()</title>
<updated>2017-03-06T19:50:44+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-06T19:50:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=a59e39b1d70ce1e6dc731ff2af4a85af253939c3'/>
<id>a59e39b1d70ce1e6dc731ff2af4a85af253939c3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add forgotten files</title>
<updated>2017-03-06T19:32:49+00:00</updated>
<author>
<name>Oskari Timperi</name>
<email>oskari.timperi@iki.fi</email>
</author>
<published>2017-03-06T19:32:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/mqtt/commit/?id=a3dbe2dff7a56485eb4054368c2d2d1c4dee3437'/>
<id>a3dbe2dff7a56485eb4054368c2d2d1c4dee3437</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
