summary refs log tree commit diff
path: root/litterbox.c (follow)
Commit message (Collapse)AuthorAge
* Tighten action handlingJune McEnroe2021-06-20
| | | | | Don't match actions in notices. Match empty "\1ACTION\1" actions. Don't truncate at the first '\1'.
* Fix MOTD buffer reallocation 1.8June McEnroe2021-05-19
| | | | Woops. Not how that should be done.
* Format litterbox query interface results like scoopJune McEnroe2021-05-07
| | | | With the colored context too.
* Limit query interface results using search.rowid DESCJune McEnroe2021-05-07
| | | | | | | | This vastly increases the speed of the query for any search with a decent number of matches. It can be slightly less accurate since it depends on the insert order of events, but that usually won't be a problem for a query limited to a single network. The litterbox query interface isn't meant to exhaustively list results either.
* Add -t option to trust self-signed certificatesJune McEnroe2021-04-03
| | | | | Not adding a corresponding -o option like in pounce and catgirl, since litterbox is likely connecting to pounce anyway.
* Skip STATUSMSG prefixesJune McEnroe2021-04-02
| | | | | This feature is rarely used, so just skip STATUSMSG prefixes in the target so events use the right context.
* Use nick for color if user is "*"June McEnroe2020-12-13
| | | | | Not accurate but better than every message being the same color in imported logs.
* Use a static buffer for base directory pathsJune McEnroe2020-08-21
|
* Use configPath to load cert/privJune McEnroe2020-08-20
|
* Use dataPath for dbFindJune McEnroe2020-08-20
|
* Import xdg.c from catgirlJune McEnroe2020-08-20
|
* Say "OpenSSL" in additional permission noticesJune McEnroe2020-08-10
| | | | | | | LibreSSL is "a modified version of that library". Oops, should've done this before tagging, but I don't think it matters much. They're both versions of the same library, right?
* Add -U scooper-url option to make scooper linksJune McEnroe2020-07-19
|
* Convert timestamps to unix epoch timeJune McEnroe2020-07-08
| | | | This saves 125 MB on my own database after VACUUM.
* Bump ParamCap to 254June McEnroe2020-06-24
| | | | | | | | | | | | Apparently IRCds have decided that the 15-parameter limit doesn't matter anymore. 254 is the maximum number of single-byte parameters (following a single-byte command) which fit in a 512-byte CR-LF-terminated line. When everyone decides that the 512-byte line length limit doesn't matter either, I will delete my software and people can use some JavaScript garbage instead. This makes struct Message 2080 bytes, but there's only ever one of it around at once. Avoid passing it by value to handle.
* Remove RPL_MOTDSTART handlerJune McEnroe2020-06-12
| | | | | | Relying on the MOTDSTART handler to set motd.cap and allocate the buffer is an issue if a regular RPL_MOTD is received without one. Just allocate the buffer on the first RPL_MOTD.
* Add additional permission for linking with LibreSSLJune McEnroe2020-06-08
| | | | https://www.gnu.org/licenses/gpl-faq.en.html#GPLIncompatibleLibs
* Automatically perform database migrations in litterboxJune McEnroe2020-05-21
| | | | | To simplify upgrades, restarting litterbox should be sufficient. The database can still be explicitly migrated with -m.
* Call updateConsumer from handleError 1.2p1June McEnroe2020-04-23
| | | | | This should prevent continually crashing on the same ERROR in the pounce buffer.
* Error on invalid ISUPPORT values 1.2June McEnroe2020-04-05
|
* Log bans and unbansJune McEnroe2020-04-05
|
* Parse mode types from ISUPPORTJune McEnroe2020-04-05
|
* Add Ban and Unban event typesJune McEnroe2020-04-05
|
* Update styleJune McEnroe2020-04-02
| | | | | Replacing declarations followed by while loops with for loops and generating the short option string from the long options.
* Fix writing verbose to stderrJune McEnroe2020-03-31
|
* Implement the causal.agency/consumer capabilityJune McEnroe2020-02-28
|
* Include <>/-/* around nicks in coloringJune McEnroe2020-02-22
|
* Use (almost) the full range of IRC colors for nicksJune McEnroe2020-02-22
| | | | This matches the function used by catgirl.
* Add -b flag for live backupJune McEnroe2020-01-14
|
* Add option for client cert and SASL EXTERNALJune McEnroe2020-01-12
|
* Request the causal.agency/passive capabilityJune McEnroe2020-01-10
| | | | | This is implemented by pounce and prevents litterbox from affecting the away status of pounce's server connection.
* Import getopt_config from pounceJune McEnroe2020-01-04
|
* Add -N option to litterboxJune McEnroe2020-01-04
|
* Set the default network name to the hostnameJune McEnroe2020-01-04
|
* Don't special case user being * in queriesJune McEnroe2020-01-01
| | | | | | It's a side-effect of imports that shouldn't surface elsewhere. Would be nice to have unscoop figure out how it can eliminate using * in more places.
* Factor out hashing functionJune McEnroe2020-01-01
|
* Join with USING wherever possibleJune McEnroe2019-12-30
|
* Order results by ID in outer query in litterboxJune McEnroe2019-12-30
|
* Add limit option for litterbox's search query interfaceJune McEnroe2019-12-30
|
* Send fts5 errors in response to queriesJune McEnroe2019-12-28
|
* Don't insert self-messagesJune McEnroe2019-12-28
| | | | | Even with NOTICEs litterbox would sometimes receive its own responses, which would create duplicates in the database, essentially.
* Call tls_close and dbClose in atexitJune McEnroe2019-12-28
|
* Move querySearch code aroundJune McEnroe2019-12-27
|
* Add nick coloring to search query resultsJune McEnroe2019-12-27
|
* Reply to search queries with NOTICEJune McEnroe2019-12-27
| | | | | When connected to pounce, it's possible to receive some of its own PMs, so it should respond with what can't be commands.
* Add search query interfaceJune McEnroe2019-12-27
|
* Use bsearch to find handlerJune McEnroe2019-12-26
| | | | | | | | | The code is a bit cleaner this way I think, and performance would be better if the list of handlers ever got very long, and it was sorted anyway. However, I would prefer if there were a way to enforce the list being sorted at compile-time.
* Handle ERRORJune McEnroe2019-12-26
|
* Make sure context exists in handleReplyTopicJune McEnroe2019-12-26
|
* Inline queries, move stuff aroundJune McEnroe2019-12-25
| | | | | | No idea now why I wanted to have network bound all the time. Ended up creating a copy of the string for each statement instead of just having one like this.