C. McEnroe
2d36c4d7c9
Use a for loop for getopt
2020-04-02 16:13:23 -04:00
C. McEnroe
06543b7030
Generate short option string with a loop
...
Also change the way option structs are initialized so that the array
sorts the same way as the switch statement.
2020-04-02 14:14:43 -04:00
C. McEnroe
25f419465f
Add /ignore message filtering patterns
2020-03-31 14:30:42 -04:00
C. McEnroe
ff78362826
Replace some declaration; while loops with for loops
...
I should have been using this for getopt loops already but the call here
is slightly too long to fit on one line as a for loop.
2020-03-30 19:44:45 -04:00
C. McEnroe
a0dde10cb6
Add text macros
2020-03-30 14:56:26 -04:00
C. McEnroe
d99f20c0ff
Add logging functions
...
The mkdir dance is a bit awkward...
2020-03-25 18:56:09 -04:00
C. McEnroe
cf1545870a
Assume worst case for unknown user and host in splitMessage
...
The default USERLEN of 9 doesn't have a great source, the RFC only says
that nicks are length 9, so my assumption is that usernames are not
longer.
2020-03-23 13:25:10 -04:00
C. McEnroe
1d5c4a5e34
Send blank line after 10 minutes idle
...
Without this, I was having catgirl "time out" from pounce's POV, but
without catgirl noticing anything... I still don't understand this. Been
using this fix for a couple weeks though and it stopped happening, and
it's otherwise harmless, but yikes.
2020-03-17 11:58:50 -04:00
C. McEnroe
b20be7cbad
Various small cleanups
...
Haven't really gone through ui.c yet.
2020-02-16 23:05:43 -05:00
C. McEnroe
fa4e81d480
Set defaults for various types of modes
...
These are actually from RFC 1459, since that seems to be the more likely
lowest common denominator, so I should maybe it it to STANDARDS (along
with ircdocs' section on ISUPPORT). RFC 2812 has a lot of stuff that
isn't currently used.
2020-02-15 22:59:04 -05:00
C. McEnroe
700b5d5870
Replace small integers in size_t with uint
2020-02-15 22:19:55 -05:00
C. McEnroe
42d106260b
Separate network info from self
2020-02-15 04:54:53 -05:00
C. McEnroe
46f61dfcdc
Add /exec
2020-02-13 22:22:11 -05:00
C. McEnroe
1e226593ef
Rename procPipe to utilPipe
2020-02-13 21:57:55 -05:00
C. McEnroe
fcfbe8a14c
Add -g for generating certificates
...
Copied from pounce.
2020-02-13 01:39:25 -05:00
C. McEnroe
0a772ff139
Explicitly close the TLS connection
...
Just to be nice.
2020-02-13 01:01:23 -05:00
C. McEnroe
180bbc7b38
Add -N flag for notifications
2020-02-12 20:12:34 -05:00
multiplexd
1e544ce482
Implement source address selection
...
This commit adds a '-S' command line option and a "bind"
configuration file option to specify the source address to bind to when
connecting to the IRC server.
2020-02-13 00:05:52 +00:00
C. McEnroe
d73085eaa9
Allow for arguments to open/copy utilities
2020-02-12 00:48:43 -05:00
C. McEnroe
10ae7bedbd
Add -R restricted flag
2020-02-11 22:39:29 -05:00
C. McEnroe
62472ab183
Add startup GPLv3 note and URL
...
I am a degenerate.
2020-02-11 19:43:55 -05:00
C. McEnroe
cc80fae758
Set self.nick to * initially
...
Allows removing a bunch of checks that self.nick is set, and it's what
the server usually calls you before registration.
Never highlight notices as mentions.
2020-02-11 17:52:55 -05:00
C. McEnroe
babd3b0a6c
Synthesize a QUIT message to handle on exit
...
So that the end of a saved buffer contains the self quit.
2020-02-10 20:06:25 -05:00
C. McEnroe
99480a42e5
Factor out XDG base directory code
...
And add warnings to configOpen, since that's the only way to be accurate
if a weird error occurs.
2020-02-10 19:57:10 -05:00
C. McEnroe
b59431bb15
Add -s to save and load buffers
2020-02-10 19:40:13 -05:00
C. McEnroe
0d93e66a68
Add -H
2020-02-10 05:50:28 -05:00
C. McEnroe
5254e1035c
Add /help
...
Now with automatic search! Also had to fix the SIGCHLD handling...
2020-02-09 14:09:27 -05:00
C. McEnroe
3e68684148
Add /copy
2020-02-08 21:44:50 -05:00
C. McEnroe
2db17e83a9
Allow overriding the /open utility
2020-02-08 21:21:21 -05:00
C. McEnroe
362d779b61
Set FDs CLOEXEC
2020-02-08 19:12:05 -05:00
C. McEnroe
156282c95d
Add procPipe for subprocesses
2020-02-08 17:42:19 -05:00
C. McEnroe
8128edc7eb
Handle SIGCHLD
2020-02-08 17:22:51 -05:00
C. McEnroe
72d8749454
Check signals after file descriptors
...
If a signal happens while processing an FD, it should be handled
immediately, rather than waiting for another poll return.
2020-02-08 17:04:25 -05:00
C. McEnroe
fe5fd89705
Populate completion with commands
2020-02-07 21:39:56 -05:00
C. McEnroe
8b3bf897c2
Search for cert and priv in config dirs
2020-02-06 02:21:04 -05:00
C. McEnroe
839cc362a8
Handle errors from getopt
2020-02-05 22:51:45 -05:00
C. McEnroe
27eaddb6b9
Use getopt_config to load options
...
I'm really getting a lot of use out of this config.c huh.
2020-02-05 22:49:56 -05:00
C. McEnroe
7c0e9cf3d2
Add /quit
2020-02-05 21:57:23 -05:00
C. McEnroe
2d5f608cc5
Fix SIGWINCH handling
...
curses is dumb.
2020-02-05 17:58:49 -05:00
C. McEnroe
42210e079b
Reflow text on window resize
2020-02-05 02:03:21 -05:00
C. McEnroe
9944dc484b
Split showing style codes and word wrapping
2020-02-04 20:23:55 -05:00
C. McEnroe
f3fb466a31
Only check revents if nfds > 0
...
If an error occurs, poll leaves the array unmodified.
2020-02-04 19:06:54 -05:00
C. McEnroe
5e9863fa82
Handle signals in poll loop
2020-02-04 19:02:54 -05:00
C. McEnroe
43845c6115
Add beginnings of input handling
2020-02-04 03:58:56 -05:00
C. McEnroe
0d6a60cc66
Save NETWORK, CHANTYPES, PREFIX from ISUPPORT
2020-02-02 17:37:36 -05:00
C. McEnroe
8bb9ea7b7f
Add idColors
2020-02-02 03:27:50 -05:00
C. McEnroe
ec83332e15
Implement window switching and status line
2020-02-02 03:13:50 -05:00
C. McEnroe
05256b68fe
Implement word wrap
...
This actually wasn't that bad?
2020-02-01 22:41:30 -05:00
C. McEnroe
cd3dc4ef4c
Parse IRC styling in UI
...
Wow the colorPair thing actually works. Have I finally cracked curses
colors?
2020-02-01 21:57:11 -05:00
C. McEnroe
e5363bcae0
Implement the beginnings of UI
...
It takes so much code to do anything in curses...
2020-02-01 19:37:55 -05:00