Commits
- Commit:
06035a023710962df95f48d8486739154a9d707a
- From:
- Omar Polo <op@omarpolo.com>
- Date:
more is*() unsigned char cast
continuation of 6130e0eeac9db4fa8e6fe5934ec2d0ab202f979e
- Commit:
97b306cbee6d105885a761e04274f661a0ec3757
- From:
- Omar Polo <op@omarpolo.com>
- Date:
add an implicit fastcgi parameter: GEMINI_SEARCH_STRING
it’s the QUERY_STRING decoded if it’s a search-string (i.e. not a
key-value pair.) It’s useful for scripts to avoid percent-decoding
the querystring in the most common case of a query, because in Gemini
querystrings key-value paired are not common.
Idea from a discussion with Allen Sobot.
- Commit:
6130e0eeac9db4fa8e6fe5934ec2d0ab202f979e
- From:
- Omar Polo <op@omarpolo.com>
- Date:
always cast is*() arguments to unsigned char
- Commit:
a555e0d67baef271ffe4a186326ee5f1c16fff75
- From:
- Omar Polo <op@omarpolo.com>
- Date:
copyright years
- Commit:
f2f8eb35c86c4e1c1d858e782c864deac0511cd3
- From:
- Omar Polo <op@omarpolo.com>
- Date:
encode file names in the directory index
Spotted the hard way by cage
- Commit:
5e41063f1b0cd8f096ec925777bc4cf4ef6ba828
- From:
- Omar Polo <op@omarpolo.com>
- Date:
bugfix: allow @ and : in paths
gmid would disallow the '@' and ':' characters in paths (unless
percent-encoded.) Issue reported by freezr.
- Commit:
4842c72d9f3f45478cb641e15a3272e541fb8a18
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fmt
- Commit:
fa0299a26d6e0cc83135a7f46e74710a9d5a8efa
- From:
- Omar Polo <op@omarpolo.com>
- Date:
drop now unused trim_req_iri
- Commit:
e15fc9573666054bdff5feecf8b2b130ca00cc76
- From:
- Omar Polo <op@omarpolo.com>
- Date:
change struct initialization
makes more explicit which fields we're setting.
(and kill an extra empty line)
- Commit:
df0c2926ccb753d07a3f20f3626a20f7079453ee
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use memset(3) rather than bzero(3)
There's no difference, but bzero(3) says
STANDARDS
The bzero() function conforms to the X/Open System Interfaces option of
the IEEE Std 1003.1-2004 (“POSIX.1”) specification. It was removed from
the standard in IEEE Std 1003.1-2008 (“POSIX.1”), which recommends using
memset(3) instead.
so here we are.
- Commit:
a8a1f439210de9538b196c6bb5470c306379128c
- From:
- Omar Polo <op@omarpolo.com>
- Date:
style(9)-ify
- Commit:
80fbf1e934ed1e2dafea65e88bb91a501f175a3b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
make sure l is always initialized
I can't think of cases where we reach serialize_iri and path is NULL,
but let's keep the safe side and initialize l. gcc 8 found this,
clang didn't.
- Commit:
9d092b607a25f4598557792be5ec35f02c3ae966
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fix IRI-parsing bug
Some particularly crafted IRIs can cause a denial of service (DOS).
IRIs which have a trailing `..' segment and resolve to a valid IRI
(i.e. a .. that's not escaping the root directory) will make the
server process loop forever.
This is """just""" an DOS vulnerability, it doesn't expose anything
sensitive or give an attacker anything else.
- Commit:
52418c8d828bc25e0e84cc25d5e349a84be0b397
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fix various compilation errors
Include gmid.h as first header in every file, as it then includes
config.h (that defines _GNU_SOURCE for instance).
Fix also a warning about unsigned vs signed const char pointers in
openssl.
- Commit:
9f006a2127398af12ecf9159cd5ef28b3685e7a6
- From:
- Omar Polo <op@omarpolo.com>
- Date:
[cgi] split the query in words if needed and add them to the argv