]>
PatchyGit - patchyircd.git/log
Egor [Thu, 5 Jun 2025 17:58:25 +0000 (20:58 +0300)]
map: use algorithms
Egor [Thu, 5 Jun 2025 17:34:14 +0000 (20:34 +0300)]
netpoll: merge pollfd and polldata structures
Egor [Thu, 5 Jun 2025 16:54:34 +0000 (19:54 +0300)]
netpoll: store pollfds in a vector
Egor [Thu, 5 Jun 2025 16:33:33 +0000 (19:33 +0300)]
poll: change the net_pollfd public interface
Since we're copying the structure out in ::get we might as well keep it
separate from the internal structure (which really should be combined
with polldata).
Also rename it to just pollfd since we no longer have name conflict with
poll.h.
Egor [Thu, 5 Jun 2025 15:01:10 +0000 (18:01 +0300)]
netpoll: flatten add_impl/del_impl
Egor [Thu, 5 Jun 2025 14:57:57 +0000 (17:57 +0300)]
netpoll: use UV_READABLE constants directly
Egor [Thu, 5 Jun 2025 14:52:17 +0000 (17:52 +0300)]
netpoll: factor out a bunch of search checks
Egor [Thu, 5 Jun 2025 14:12:03 +0000 (17:12 +0300)]
job: use a deuque to store jobents
Egor [Thu, 5 Jun 2025 13:38:35 +0000 (16:38 +0300)]
job/netpoll: clean up remnants of the old SIGCHLD handling
Egor [Wed, 4 Jun 2025 23:22:20 +0000 (02:22 +0300)]
make libuv required dependency
Egor [Wed, 4 Jun 2025 21:45:54 +0000 (00:45 +0300)]
Makefile: rework to use object files
Egor [Wed, 4 Jun 2025 19:33:38 +0000 (22:33 +0300)]
REUSE compliance
Egor [Wed, 4 Jun 2025 13:51:03 +0000 (16:51 +0300)]
COPYING: update FSF address
Egor [Wed, 4 Jun 2025 12:42:46 +0000 (15:42 +0300)]
add copyright information to all source files
Egor [Wed, 4 Jun 2025 12:33:19 +0000 (15:33 +0300)]
add admin.txt to .gitignore
Egor [Wed, 28 May 2025 23:58:16 +0000 (02:58 +0300)]
netpoll: report shutdown sockets as POLLIN|POLLOUT
Egor [Wed, 28 May 2025 21:20:35 +0000 (00:20 +0300)]
output something on every abort()
Egor [Wed, 28 May 2025 20:15:55 +0000 (23:15 +0300)]
netpoll: move include uv.h out of namespace
Egor [Thu, 27 Mar 2025 08:10:11 +0000 (10:10 +0200)]
actually remove config.h
Egor [Thu, 27 Mar 2025 08:04:15 +0000 (10:04 +0200)]
netpoll: automatically choose implementation
Egor [Thu, 27 Mar 2025 07:59:02 +0000 (09:59 +0200)]
config.example.mk: default USE_UV=1
Egor [Thu, 27 Mar 2025 07:57:32 +0000 (09:57 +0200)]
.gitignore: remove outdated entries
Egor [Thu, 27 Mar 2025 07:56:58 +0000 (09:56 +0200)]
irc: make ADMIN info configurable
Egor [Thu, 27 Mar 2025 07:35:32 +0000 (09:35 +0200)]
use system hostname by default
Egor [Thu, 27 Mar 2025 07:22:46 +0000 (09:22 +0200)]
lua: don't hardcode the lua path
Egor [Thu, 27 Mar 2025 06:48:32 +0000 (08:48 +0200)]
create_listen_sock: make sure we get a TCP socket
on netbsd, getaddrinfo returns SOCK_DGRAM first
Egor [Thu, 27 Mar 2025 06:34:53 +0000 (08:34 +0200)]
make IRCDDATADIR configurable at runtime
Egor [Thu, 27 Mar 2025 05:39:37 +0000 (07:39 +0200)]
README: update with latest improvements
Egor [Thu, 27 Mar 2025 05:10:16 +0000 (07:10 +0200)]
ircfmt: move SASL replies into functions
Egor [Thu, 27 Mar 2025 04:54:13 +0000 (06:54 +0200)]
irc: turn channel length limit into a define
Also add 476 response.
Also move that stuff out of config.h. This isn't something that should
be configured at compile time.
Egor [Thu, 27 Mar 2025 04:36:21 +0000 (06:36 +0200)]
admin: include lua.hpp
fixes ABI problems on systems using upstream lua
Co-authored-by: Izuru Yakumo <eternal-servant@yakumo.dev>
Egor [Tue, 18 Mar 2025 23:56:48 +0000 (01:56 +0200)]
wrap setsockopt
Egor [Tue, 18 Mar 2025 23:55:05 +0000 (01:55 +0200)]
add tcp keepalive
Egor [Tue, 18 Mar 2025 19:24:03 +0000 (21:24 +0200)]
irc: don't send error when changing nick to itself
Egor [Mon, 17 Mar 2025 18:39:05 +0000 (20:39 +0200)]
netpoll: move into namespace
Egor [Mon, 17 Mar 2025 18:23:13 +0000 (20:23 +0200)]
netpoll: remove select/epoll implementations
Egor [Mon, 17 Mar 2025 18:19:35 +0000 (20:19 +0200)]
netpoll: log when EBADF happens
Egor [Mon, 17 Mar 2025 17:33:53 +0000 (19:33 +0200)]
netpoll: close sockets in the uv_close callback
Egor [Sun, 2 Mar 2025 20:26:20 +0000 (22:26 +0200)]
netpoll: wait for uv_close before reusing polldata
Egor [Sun, 2 Mar 2025 20:05:25 +0000 (22:05 +0200)]
netpoll: add ability to change type without readding
kinda fixes an assert in libuv, but not really
Egor [Sun, 2 Mar 2025 18:05:00 +0000 (20:05 +0200)]
map: move map_value into the class
Egor [Sun, 2 Mar 2025 17:32:12 +0000 (19:32 +0200)]
map: move base functions into the class
Egor [Sun, 2 Mar 2025 16:26:33 +0000 (18:26 +0200)]
map: more c++ification
Egor [Sun, 2 Mar 2025 12:36:51 +0000 (14:36 +0200)]
map: start c++ifying
Egor [Sat, 1 Mar 2025 21:37:19 +0000 (23:37 +0200)]
map: specify types
Egor [Sat, 1 Mar 2025 21:19:59 +0000 (23:19 +0200)]
netpoll: fix memory leaks
Egor [Sat, 1 Mar 2025 20:01:02 +0000 (22:01 +0200)]
move signal handling to job, add libuv support
Egor [Sat, 1 Mar 2025 19:47:03 +0000 (21:47 +0200)]
netpoll: add libuv implementation
Egor [Sat, 1 Mar 2025 14:56:31 +0000 (16:56 +0200)]
netpoll: fix NETPOLL_MAXFDS check
Egor [Sat, 1 Mar 2025 13:58:09 +0000 (15:58 +0200)]
use c++20
Egor [Sat, 1 Mar 2025 13:51:22 +0000 (15:51 +0200)]
switch to c++
Egor [Sat, 1 Mar 2025 13:46:29 +0000 (15:46 +0200)]
Makefile: simplify USE_TLS
Egor [Sat, 1 Mar 2025 13:40:22 +0000 (15:40 +0200)]
remove windows support
Egor [Tue, 21 Jan 2025 07:36:44 +0000 (09:36 +0200)]
crypt_blowfish.c: clang++ compat in BF_swap
Egor [Tue, 21 Jan 2025 07:31:19 +0000 (09:31 +0200)]
fix remaining c++ warnings (initialization)
Egor [Tue, 21 Jan 2025 04:07:06 +0000 (06:07 +0200)]
fix -fpermissive and other c++ errors
Egor [Tue, 21 Jan 2025 03:39:33 +0000 (05:39 +0200)]
irc.c: fix goto crossing initialization of res
Egor [Tue, 21 Jan 2025 03:36:29 +0000 (05:36 +0200)]
crypt_blowfish.c: don't return a string literal
Egor [Tue, 21 Jan 2025 03:35:16 +0000 (05:35 +0200)]
fix -Wliteral-suffix
Egor [Tue, 21 Jan 2025 03:23:45 +0000 (05:23 +0200)]
add explicit casting for (m|c|re)alloc
Egor [Tue, 21 Jan 2025 03:05:04 +0000 (05:05 +0200)]
irc.c: factor out nuh update
Egor [Tue, 21 Jan 2025 02:57:57 +0000 (04:57 +0200)]
remove map_trie implementation
Egor [Tue, 21 Jan 2025 02:49:50 +0000 (04:49 +0200)]
add an experimental c++-mode build
Egor [Tue, 21 Jan 2025 02:20:30 +0000 (04:20 +0200)]
spam.lua: yet another supernets variation
Egor [Thu, 2 Jan 2025 21:14:01 +0000 (23:14 +0200)]
spam.lua: also match against non-stripped text
Egor [Thu, 2 Jan 2025 20:23:23 +0000 (22:23 +0200)]
spam.lua: another supernets one
Egor [Tue, 27 Aug 2024 15:59:09 +0000 (18:59 +0300)]
ircfmt: null nickname for 433
Egor [Fri, 23 Aug 2024 05:37:27 +0000 (08:37 +0300)]
add warning flags for old style decls
Egor [Sat, 17 Aug 2024 23:11:08 +0000 (02:11 +0300)]
spam.lua: fix iteration
Egor [Sat, 17 Aug 2024 22:23:40 +0000 (01:23 +0300)]
spam.lua: use one set of hooks for all simple filters
Egor [Sat, 17 Aug 2024 22:07:55 +0000 (01:07 +0300)]
spam.lua: refactor basic filters
Egor [Sat, 17 Aug 2024 21:49:23 +0000 (00:49 +0300)]
init.lua add hookinfo command
Egor [Sat, 17 Aug 2024 21:41:26 +0000 (00:41 +0300)]
spam.lua: typos
Egor [Sat, 17 Aug 2024 21:39:21 +0000 (00:39 +0300)]
init.lua: fix copy-pasted hook names
Egor [Sat, 17 Aug 2024 21:29:43 +0000 (00:29 +0300)]
spam.lua: add more pm filters
Egor [Sat, 17 Aug 2024 21:27:05 +0000 (00:27 +0300)]
spam.lua: lowercase the string before checking
Egor [Sat, 17 Aug 2024 21:21:29 +0000 (00:21 +0300)]
spam.lua: minor fix
Egor [Sat, 17 Aug 2024 21:03:13 +0000 (00:03 +0300)]
spam.lua: block yet another network
Egor [Mon, 12 Aug 2024 18:47:37 +0000 (21:47 +0300)]
add biboumi hostname support
Egor [Fri, 28 Jun 2024 18:57:51 +0000 (21:57 +0300)]
wait for SASL password check
Egor [Fri, 28 Jun 2024 18:45:50 +0000 (21:45 +0300)]
don't leak WEBIRC password
Egor [Fri, 28 Jun 2024 18:40:05 +0000 (21:40 +0300)]
fix use-after-free with jobs
Egor [Fri, 28 Jun 2024 18:26:27 +0000 (21:26 +0300)]
fix double-free with jobs
Egor [Fri, 28 Jun 2024 17:46:30 +0000 (20:46 +0300)]
add WEBIRC support
Egor [Mon, 27 May 2024 11:02:24 +0000 (14:02 +0300)]
passwd: remove sha512 hashing
Egor [Mon, 27 May 2024 10:24:16 +0000 (13:24 +0300)]
passwd: migrate to blowfish strength 12
Egor [Mon, 27 May 2024 10:11:26 +0000 (13:11 +0300)]
help.txt: update with the latest info
Egor [Mon, 27 May 2024 09:32:14 +0000 (12:32 +0300)]
spam.lua: block some dumb podcast guy
Egor [Thu, 1 Feb 2024 19:18:13 +0000 (21:18 +0200)]
use jobs for auth
Egor [Thu, 1 Feb 2024 17:15:00 +0000 (19:15 +0200)]
use jobs for oper login
and fix a ton of bugs in the jobs implementation
Egor [Thu, 1 Feb 2024 15:11:01 +0000 (17:11 +0200)]
add fork job system
Egor [Thu, 1 Feb 2024 10:22:46 +0000 (12:22 +0200)]
add preliminary support for blowfish passwords
also windows support, kinda
Egor [Wed, 31 Jan 2024 19:10:48 +0000 (21:10 +0200)]
passwd.c: include netsock.h first
fixes _WIN32_WINNT redefinition
Egor [Wed, 31 Jan 2024 19:08:33 +0000 (21:08 +0200)]
always compile admin.[ch]
this makes it easier to do windows builds
Egor [Wed, 31 Jan 2024 19:07:48 +0000 (21:07 +0200)]
passwd.c: fix compilation on windows
Egor [Wed, 31 Jan 2024 18:53:39 +0000 (20:53 +0200)]
FD_CLOEXEC everything
_GNU_SOURCE is needed for socket4
Egor [Wed, 31 Jan 2024 11:52:12 +0000 (13:52 +0200)]
fix localhost/hidden service detection
tbh hidden service should be probably done via AF_UNIX
Egor [Fri, 26 Jan 2024 15:48:23 +0000 (17:48 +0200)]
add lua/local.lua to gitignore
Egor [Fri, 26 Jan 2024 15:13:37 +0000 (17:13 +0200)]
apply a different hostname on 127.0.0.2
for the people who connect to the hidden service
Egor [Fri, 26 Jan 2024 14:04:04 +0000 (16:04 +0200)]
use luaL_setfuncs to register globals