<feed xmlns='http://www.w3.org/2005/Atom'>
<title>~irc/github.com/solanum-ircd/solanum.git/extensions/example_module.c, branch main</title>
<subtitle>https://github.com/solanum-ircd/solanum</subtitle>
<id>https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/atom/extensions/example_module.c?h=main</id>
<link rel='self' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/atom/extensions/example_module.c?h=main'/>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/'/>
<updated>2026-03-17T20:22:38Z</updated>
<entry>
<title>Adjust unsigned int -&gt; uint64_t for all caps</title>
<updated>2026-03-17T20:22:38Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-03-15T23:28:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=3253a979e4d9230fbad9a1fb9e6fc8a81aebc4ce'/>
<id>urn:sha1:3253a979e4d9230fbad9a1fb9e6fc8a81aebc4ce</id>
<content type='text'>
The previous commit addressed the issue with (most) function signatures,
but forgot to update the caps themselves to be 64-bit. This fixes that,
and finishes the remaining overlooked function signatures.
</content>
</entry>
<entry>
<title>Batch updates</title>
<updated>2026-01-21T16:10:44Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-01-13T17:12:32Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=8162cbe9d4f350da87a6eff02d06c804889b0d5f'/>
<id>urn:sha1:8162cbe9d4f350da87a6eff02d06c804889b0d5f</id>
<content type='text'>
The extension example_module was extended to introduce a new
client-initiated batch type named test. This is primarily done to ease
testing of the client-initiated portions of m_batch, but also serves as
a useful sketch for how a module can register its own client-initiated
batch types.

The definition of struct BatchHandler was slightly modified to use a
callback function to determine if nesting is allowed. The callback can
additionally set a custom error message if desired when returning false.

The len and messages list in struct Batch no longer include the start
message, so a len of 0 indicates an empty batch. Because the start
message is still allocated and saved off, adjust anything that impacts a
client's pending_batch_lines by 1 to account for the implicit additional
message.

Empty batches now trigger the relevant batch handler. If a handler wants
to no-op on empty batches, it can do so but this allows additional
flexibility for handlers to still do something upon receiving empty
client-initiated batches.
</content>
</entry>
<entry>
<title>hook_fn casts were hiding UB (#265)</title>
<updated>2021-08-20T03:09:40Z</updated>
<author>
<name>Eric Mertens</name>
</author>
<published>2021-08-20T03:09:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=82436efb60ac699ff6335068341bd8b6920c4eb4'/>
<id>urn:sha1:82436efb60ac699ff6335068341bd8b6920c4eb4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Innovation by sed</title>
<updated>2020-10-15T14:52:41Z</updated>
<author>
<name>Ed Kellett</name>
</author>
<published>2020-10-15T14:51:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=a6f63a829e22fa83a4551cb9aad3e316e7c8bb18'/>
<id>urn:sha1:a6f63a829e22fa83a4551cb9aad3e316e7c8bb18</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Message handlers should return void.</title>
<updated>2016-03-09T07:37:03Z</updated>
<author>
<name>Elizabeth Myers</name>
</author>
<published>2016-03-09T07:37:03Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=3c7d6fcce7a021ea7c4948a37a32aeca072e5b10'/>
<id>urn:sha1:3c7d6fcce7a021ea7c4948a37a32aeca072e5b10</id>
<content type='text'>
Also fix up some return values and stuff to use bool (or void if
nothing). I just did it whilst I was here.

According to jilles, the return value used to signify whether or not the
client had exited. This was error-prone and was fixed a long, long time
ago, but the return value was left int for historical reasons.

Since the return type is not used (and has no clear use case anyway),
it's safe to just get rid of it.
</content>
</entry>
<entry>
<title>Move module description headers to the top</title>
<updated>2016-03-09T07:29:41Z</updated>
<author>
<name>Elizabeth Myers</name>
</author>
<published>2016-03-09T07:29:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=eeabf33a7c34efbedce519f67b8b87e4c75a422f'/>
<id>urn:sha1:eeabf33a7c34efbedce519f67b8b87e4c75a422f</id>
<content type='text'>
This is cleaner.

Note this was broken out of a much larger piece of work I did, so if
there's any problems, I apologise!
</content>
</entry>
<entry>
<title>example_module: forgot a stupid semicolon.</title>
<updated>2016-03-07T07:35:35Z</updated>
<author>
<name>Elizabeth Myers</name>
</author>
<published>2016-03-07T07:35:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=de2b673f5a3b476f318ae1dc6dc418222d160787'/>
<id>urn:sha1:de2b673f5a3b476f318ae1dc6dc418222d160787</id>
<content type='text'>
</content>
</entry>
<entry>
<title>example_module: update for AV2.</title>
<updated>2016-03-07T07:27:57Z</updated>
<author>
<name>Elizabeth Myers</name>
</author>
<published>2016-03-07T07:27:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=4d552723ee1122c5c0055f6a3a66676597096611'/>
<id>urn:sha1:4d552723ee1122c5c0055f6a3a66676597096611</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Bump all extensions to AV2</title>
<updated>2016-03-07T05:57:10Z</updated>
<author>
<name>Elizabeth Myers</name>
</author>
<published>2016-03-07T05:57:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=04f832b7783aa1973717135a04aaa89d62b12e25'/>
<id>urn:sha1:04f832b7783aa1973717135a04aaa89d62b12e25</id>
<content type='text'>
Most do not yet have descriptions, but that's trivial.
</content>
</entry>
<entry>
<title>Remove $Id tags from everything.</title>
<updated>2016-03-06T08:47:27Z</updated>
<author>
<name>Elizabeth Myers</name>
</author>
<published>2016-03-06T08:46:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=cbeab4bc340b7b3f4fbf424ff327758defb9598a'/>
<id>urn:sha1:cbeab4bc340b7b3f4fbf424ff327758defb9598a</id>
<content type='text'>
These are obsolete and none have changed since 10 years gao...
</content>
</entry>
</feed>
