summary refs log tree commit diff
path: root/README
blob: 5957c57024836824fb9101b297a0f55291c6e215 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
CATGIRL(7)         FreeBSD Miscellaneous Information Manual         CATGIRL(7)

NAME
     catgirl – IRC client

DESCRIPTION
     catgirl is a curses IRC client originally intended for use over anonymous
     SSH.

     It requires LibreSSL (-ltls) and targets FreeBSD, Darwin, NetBSD and
     GNU/Linux.

INSTALL
     On platforms other than FreeBSD, copy the appropriate file to config.mk
     and modify as needed.  The default install PREFIX is ~/.local.

           cp $(uname).mk config.mk
           make
           make install

   Darwin
     LibreSSL is assumed to be installed with brew(1).  The sandman(1) wrapper
     is also installed.

   NetBSD
     LibreSSL is assumed to be installed with pkgsrc(7).  Due to bugs in
     NetBSD's curses(3) implementation, some of the UI is currently broken.

   GNU/Linux
     LibreSSL is assumed to be manually installed in /usr/local and is
     statically linked.

FILES
     chat.h     shared state and function prototypes
     chat.c     command line parsing
     event.c    event loop and process spawning
     tag.c      tag (channel, query) ID assignment
     handle.c   incoming command handling
     input.c    input command handling
     irc.c      TLS client connection
     format.c   IRC formatting
     ui.c       cursed UI
     term.c     terminal features unsupported by curses
     edit.c     line editing
     tab.c      tab-complete
     url.c      URL detection
     pls.c      functions which should not have to be written
     sandman.m  utility for Darwin to signal sleep

     sshd_config  anonymous SSH configuration
     man.sh       man(1) implementation for chroot

SEE ALSO
     catgirl(1), sandman(1)

Causal Agency                  January 25, 2019                  Causal Agency
icitly tls_handshake new clientsJune McEnroe This prevents a client connecting, sending nothing, and getting blocked in tls_read immediately. 2019-10-26Document rationaleJune McEnroe 2019-10-26Handle nick collisionJune McEnroe 2019-10-26Wait for AUTHENTICATE + from serverJune McEnroe 2019-10-26Respond to PING with same parameterJune McEnroe 2019-10-26Add undocumented flag to disable verificationJune McEnroe 2019-10-26Do not require RPL_ISUPPORT for stateReadyJune McEnroe 2019-10-26Implement graceful shutdownJune McEnroe 2019-10-26Require PASS before USERJune McEnroe Prevent creating a ring consumer without authentication. 2019-10-26Track channel topicsJune McEnroe 2019-10-26Set AWAY when no clients are connectedJune McEnroe 2019-10-26Add flags to request TOPIC and NAMES on client connectJune McEnroe 2019-10-26OopsJune McEnroe 2019-10-26Disconnect client on unknown commandJune McEnroe During registration, no other commands should be sent. Afterwards, only intercepted commands will get parsed. 2019-10-26Allow reading sensitive information from filesJune McEnroe 2019-10-26Add rc scriptJune McEnroe 2019-10-25Add install and uninstall targetsJune McEnroe 2019-10-25Expand documentationJune McEnroe 2019-10-25Add AGPLv3 notice on client registrationJune McEnroe OwO 2019-10-25Rename project pounceJune McEnroe