[InterNetNews/inn] 05d6e0: ovsqlite-util: Add vacuum support
Julien ÉLIE
noreply at github.com
Sat Aug 1 14:40:18 UTC 2026
Branch: refs/heads/2.7
Home: https://github.com/InterNetNews/inn
Commit: 05d6e05c8e5bb6f751ff91089e10f5ce60b8ab76
https://github.com/InterNetNews/inn/commit/05d6e05c8e5bb6f751ff91089e10f5ce60b8ab76
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M doc/pod/news.pod
M doc/pod/ovsqlite-util.pod
M doc/pod/ovsqlite.pod
M scripts/innreport_inn.pm
M storage/ovsqlite/ovsqlite-util.in
M tests/overview/ovsqlite-integ.t
Log Message:
-----------
ovsqlite-util: Add vacuum support
Add a -v flag that runs SQLite VACUUM to reclaim freelist pages after
permanent retention shrinks or bulk deletes. Document why vacuuming is
not automatic and why a freelist high-water mark is usually desirable
for an expiring spool. Pause a running innd when possible; work
offline when the news system is stopped.
Closes #364.
Closes #368.
Commit: 930d40bb9827da8d6b6eb2246e80401bb8071d99
https://github.com/InterNetNews/inn/commit/930d40bb9827da8d6b6eb2246e80401bb8071d99
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M backends/innxmit.c
Log Message:
-----------
Reset innxmit write pointers after buffer growth
Reset the active write pointer after growing the output buffer and make
the capacity arithmetic overflow-safe.
see #370
Commit: 168adc4a64f8073553bedb6aeef4e2f8f5c1428f
https://github.com/InterNetNews/inn/commit/168adc4a64f8073553bedb6aeef4e2f8f5c1428f
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innd/innd.c
Log Message:
-----------
Clear stale mode reason on repeated options
Reset ModeReason after freeing it so a later -m option without a reason
cannot leave a dangling pointer for shutdown cleanup.
see #370
Commit: 428d715dd8d0f7f93fe00719684ad22422b48b0f
https://github.com/InterNetNews/inn/commit/428d715dd8d0f7f93fe00719684ad22422b48b0f
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M .gitignore
M MANIFEST
M lib/reservedfd.c
M support/mkmanifest
M tests/Makefile
M tests/TESTS
A tests/lib/reservedfd-t.c
Log Message:
-----------
Fix reserved file descriptor reuse
Repair shrink and regrow handling, use an exclusive slot bound, and
replenish slots with fresh streams after freopen failures. Preserve the
original error and propagate close failures, with focused regression
coverage.
see #370
Commit: de7106f1aafaaef3e24bab68bcebd6b49f90e2fb
https://github.com/InterNetNews/inn/commit/de7106f1aafaaef3e24bab68bcebd6b49f90e2fb
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M frontends/encode.c
Log Message:
-----------
Initialize partial legacy encoder input
Zero the final short encoder group so a partial input does not consume
indeterminate padding bytes.
see #370
Commit: 61e4333151549fdd241beb9cfd7cfec679d68667
https://github.com/InterNetNews/inn/commit/61e4333151549fdd241beb9cfd7cfec679d68667
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innfeed/imap_connection.c
Log Message:
-----------
Fix IMAP and LMTP connection ownership
Handle failed read registration, preserve shared connection lifetime
while disconnecting both endpoints, and attach ownership to synthesized
To headers.
see #370
Commit: 55c0c601937639a23bbf6c06cfdf7b6f52e0a37d
https://github.com/InterNetNews/inn/commit/55c0c601937639a23bbf6c06cfdf7b6f52e0a37d
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M backends/innxbatch.c
Log Message:
-----------
Close the batch file descriptor on innxbatch errors
Net-new: on fstat failure or zero-length batch, innxbatch called
close(i) where i held a leftover setsockopt buffer size, not the
open batch fd. That leaked the batch fd and could close an unrelated
descriptor. Close fd instead.
see #370
Commit: 4ce20c96315d9795edd634f62f7dc81ca70fced2
https://github.com/InterNetNews/inn/commit/4ce20c96315d9795edd634f62f7dc81ca70fced2
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M nnrpd/perm.c
Log Message:
-----------
Reset virtual path when permissions change
PERMgetpermissions may run again after authentication. Release
any prior virtual path before recomputing access so transitions to
non-virtual or default access cannot retain stale path state.
see #370
Commit: 3f6a349bc6724a83b264a243eb4f41797f75b832
https://github.com/InterNetNews/inn/commit/3f6a349bc6724a83b264a243eb4f41797f75b832
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M expire/expire.c
Log Message:
-----------
Free replaced expire reason strings
Release a previous -r value before replacing it and discard an explicit
reason when -n disables server coordination.
see #370
Commit: 78c7c7169dad5dd8c0a6b7872bf3370b56f886d5
https://github.com/InterNetNews/inn/commit/78c7c7169dad5dd8c0a6b7872bf3370b56f886d5
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M nnrpd/perm.c
Log Message:
-----------
Give inherited canlock settings independent storage
Deep-copy addcanlockuser along with the other access-group strings and
release it during teardown. Overriding an inherited setting can no
longer free storage still owned by another group.
see #370
Commit: 8a59d8df18075c1c51f796d097aa1d28c44bf53a
https://github.com/InterNetNews/inn/commit/8a59d8df18075c1c51f796d097aa1d28c44bf53a
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innd/chan.c
Log Message:
-----------
Reject one-past channel descriptors
Channel table indices end at table_size - 1; treat table_size itself as
invalid before returning a channel pointer.
see #370
Commit: 7dfdd10a61ec340208197ac6b2bfb171c366bc9d
https://github.com/InterNetNews/inn/commit/7dfdd10a61ec340208197ac6b2bfb171c366bc9d
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innd/cc.c
Log Message:
-----------
Bound control-channel string comparisons
Compare site names before indexing their separator and derive active
flag lengths from the terminating newline. Short newsfeeds entries and
longer replacement flags no longer cause out-of-bounds reads.
see #370
Commit: 9603885f3a947bf75292330213ef95b667a5f13a
https://github.com/InterNetNews/inn/commit/9603885f3a947bf75292330213ef95b667a5f13a
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M nnrpd/commands.c
Log Message:
-----------
Close generic authenticator pipes in the parent
Release both pipe ends on terminal fork failure and close the parent
read descriptor after consuming the child response.
see #370
Commit: 1c04a0c58533f107dec2511d6cb668cd7447a782
https://github.com/InterNetNews/inn/commit/1c04a0c58533f107dec2511d6cb668cd7447a782
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innfeed/endpoint.c
Log Message:
-----------
Initialize the socket error result length
Pass getsockopt the capacity of optval instead of an indeterminate
socklen_t value.
see #370
Commit: e0b8caf7bfbea28e2dff2e2f97926b3202b05c43
https://github.com/InterNetNews/inn/commit/e0b8caf7bfbea28e2dff2e2f97926b3202b05c43
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M lib/canlock.c
Log Message:
-----------
Free generated canlock buffers through their output
Release *canbuff rather than the caller-owned pointer on generation
failures, clear it before returning false, and check the aggregate
output-size calculation before allocation.
see #370
Commit: 5a25664e95a580c231985ccf4a5ddaf363956ae7
https://github.com/InterNetNews/inn/commit/5a25664e95a580c231985ccf4a5ddaf363956ae7
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M storage/ovdb/ovdb.c
Log Message:
-----------
Close the OVDB client connection on shutdown
Release the read-server socket after sending QUIT before clearing the
cached descriptor.
see #370
Commit: cf65a0ecefc82c5f9b76143d607c1d97b07d9f75
https://github.com/InterNetNews/inn/commit/cf65a0ecefc82c5f9b76143d607c1d97b07d9f75
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M lib/network-innbind.c
Log Message:
-----------
Close innbind helper resources on every path
Release both pipe ends and the helper path after fork failure, close
the duplicated child write descriptor, and close the parent read end
after receiving the helper response.
see #370
Commit: 83c273c3e5ba4750725263834e648ee80626e97e
https://github.com/InterNetNews/inn/commit/83c273c3e5ba4750725263834e648ee80626e97e
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M nnrpd/auth-ext.c
M tests/nnrpd/auth-ext-t.c
Log Message:
-----------
Clean up external authenticator startup resources
Reject empty helper commands and release parsed arguments, allocated
paths, and partially created pipe descriptors on startup failures.
see #370
Commit: a88be6aafeb694d50fc5ebb50392ca9a528ad0bd
https://github.com/InterNetNews/inn/commit/a88be6aafeb694d50fc5ebb50392ca9a528ad0bd
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innfeed/imap_connection.c
Log Message:
-----------
Restore successful AddControlMsg returns
A warning cleanup accidentally made AddControlMsg return RET_FAIL
unconditionally. Return the accumulated result so successfully queued
control messages can transfer ownership to the IMAP queue.
see #370
Commit: a3abca8561f4b1d98cba1454e1fe8c4ed70fdaec
https://github.com/InterNetNews/inn/commit/a3abca8561f4b1d98cba1454e1fe8c4ed70fdaec
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innfeed/imap_connection.c
Log Message:
-----------
Preserve active IMAP and LMTP work ownership
Return dequeued operations to the host on disconnect, transfer buffer
arrays explicitly to endpoints, and attach command-string lifetime to
their buffers.
see #370
Commit: b6f377b828c54de7b9b6c742f49da0a7ca5c4beb
https://github.com/InterNetNews/inn/commit/b6f377b828c54de7b9b6c742f49da0a7ca5c4beb
Author: Kevin Bowling <kevin.bowling at kev009.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M innfeed/imap_connection.c
Log Message:
-----------
Close IMAP and LMTP sockets on every path
Close failed connect sockets, clean up sockets rejected by endpoint
or SASL setup, tear endpoints down on disconnect, and route successful
QUIT replies through the same cleanup path.
see #370
Commit: 0d5ef891a09b53aa32e81a9d183d5ddadfac842e
https://github.com/InterNetNews/inn/commit/0d5ef891a09b53aa32e81a9d183d5ddadfac842e
Author: Julien ÉLIE <Julien-Elie at users.noreply.github.com>
Date: 2026-08-01 (Sat, 01 Aug 2026)
Changed paths:
M doc/pod/news.pod
M frontends/encode.c
M nnrpd/perm.c
M tests/lib/reservedfd-t.c
Log Message:
-----------
Update NEWS and copyright years
close #370
Compare: https://github.com/InterNetNews/inn/compare/4abde8bae2ed...0d5ef891a09b
To unsubscribe from these emails, change your notification settings at https://github.com/InterNetNews/inn/settings/notifications
More information about the inn-committers
mailing list