1
0
mirror of https://git.sr.ht/~sircmpwn/gmnisrv synced 2025-02-02 15:08:11 -05:00
William Casarin ea40fb5a53 tls: fix crash when opening priv key for writing
The open syscall will return a negative value if the call fails. Switch
the check to look for this instead of 0.

before:

[gmnisrv] generating certificate for localhost
gmnisrv: src/tls.c:68: tls_host_gencert: Assertion `pf' failed.
abort (core dumped)  ./gmnisrv -C config.ini

after:

[gmnisrv] generating certificate for localhost
[gmnisrv] opening private key for writing failed: No such file or directory
[gmnisrv] TLS initialization failed

Signed-off-by: William Casarin <jb55@jb55.com>
2020-11-08 09:38:04 -05:00
2020-09-23 10:21:44 -04:00
2020-10-28 12:38:32 -04:00
2020-09-23 10:21:44 -04:00
2020-09-26 16:45:06 -04:00
2020-11-01 14:24:31 -05:00

gmnisrv

gmnisrv is a simple Gemini protocol server.

Installation

Dependencies:

  • A C11 compiler and a POSIX-like system
  • OpenSSL
  • Mailcap (for /etc/mime.types)
  • scdoc (optional)
$ mkdir build
$ cd build
$ ../configure --prefix=/usr
$ make
# make install

Configuration

By default it reads from /etc/gmnisrv.ini, but this can be changed by passing the -C flag to the gmnisrv daemon. A sample config.ini is provided at /usr/share/gmnisrv/gmnisrv.ini:

# Space-separated list of hosts
listen=0.0.0.0:1965 [::]:1965

[:tls]
# Path to store certificates on disk
store=/var/lib/gemini/certs

# Optional details for new certificates
organization=gmnisrv user

[example.org]
root=/srv/gemini/example.org

[example.com]
root=/srv/gemini/example.com

For full details on gmnisrv configuration, consult the gmnisrv(5) manual page.

Usage

See gmnisrv(1).

Description
No description provided
Readme 232 KiB
Languages
C 97.9%
Shell 1.6%
Makefile 0.5%