From 9380231e0ef0398ffb2ad2a6d455ded9fd40e73f Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Thu, 24 Oct 2019 18:18:32 -0400 Subject: Zero entire Client struct Does zeroing that extra 4K really matter? I'd rather not have uninitialized reads. --- client.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/client.c b/client.c index eaa8555..4bb1f54 100644 --- a/client.c +++ b/client.c @@ -46,15 +46,10 @@ struct Client { }; struct Client *clientAlloc(struct tls *tls) { - struct Client *client = malloc(sizeof(*client)); - if (!client) err(EX_OSERR, "malloc"); - - client->error = false; + struct Client *client = calloc(1, sizeof(*client)); + if (!client) err(EX_OSERR, "calloc"); client->tls = tls; client->need = NeedNick | NeedUser | (clientPass ? NeedPass : 0); - client->serverTime = false; - client->len = 0; - return client; } @@ -185,12 +180,7 @@ static const struct { static void clientParse(struct Client *client, char *line) { struct Message msg = parse(line); - if (!msg.cmd) { - // FIXME: Identify client in message. - warnx("no command"); - client->error = true; - return; - } + if (!msg.cmd) return; for (size_t i = 0; i < ARRAY_LEN(Handlers); ++i) { if (strcmp(msg.cmd, Handlers[i].cmd)) continue; Handlers[i].fn(client, msg); -- cgit 1.4.1 laver.1?h=2.1&id=be3aa8c9a8bb40cbbaefc2b91ebaee70fc64e4b1'>tree commit diff
path: root/contrib/palaver/pounce-palaver.1 (unfollow)
Commit message (Collapse)Author
2020-09-09Fix possibliy uninitialized error 2.0June McEnroe
It won't be, but gcc thinks it might.
2020-08-31Refactor reserialization and client self-producingJune McEnroe
2020-08-30Add chmod+chown to certbot exampleJune McEnroe
2020-08-30Rearrange bounce.c, move non-main mains below mainJune McEnroe
2020-08-30Sandbox pounce with unveil(2)June McEnroe
2020-08-28Refactor certificate loading and load all certs from config pathsJune McEnroe
2020-08-27Sandbox pounce with pledge(2)June McEnroe
unveil(2) is a bit complicated to apply to this, I'll have to think about it more.
2020-08-27Sandbox calico with pledge(2) and unveil(2)June McEnroe
2020-08-27Add support for OpenBSDJune McEnroe
2020-08-27Remove rc scriptsJune McEnroe
2020-08-27contrib/palaver: Fix documented database pathJune McEnroe
2020-08-27contrib/palaver: Remove rc scriptJune McEnroe
2020-08-27contrib/palaver: Fix database search and creationJune McEnroe
2020-08-27contrib/palaver: Use pounce's XDG directoryJune McEnroe
2020-08-27contrib/palaver: Only allow HTTPSJune McEnroe
2020-08-25Support the pounce_env rc variableJune McEnroe
2020-08-25Remove deprecated option namesJune McEnroe
The next release will be 2.0 so these can be removed now.
2020-08-25Document configuration and data file searchJune McEnroe
2020-08-24Use dataOpen for save fileJune McEnroe
2020-08-24Use configOpen to load localCAJune McEnroe
2020-08-24Use configPath to load client cert/privJune McEnroe
2020-08-24Use configOpen in getopt_configJune McEnroe
2020-08-24Import xdg.c from catgirlJune McEnroe
2020-08-23Replace “RAND_bytes” by “getentropy”Issam E. Maghni
This removes the dependency on libcrypto. Signed-off-by: Issam E. Maghni <issam.e.maghni@mailbox.org>
2020-08-16contrib/palaver: Add no message preview flagsJune McEnroe
2020-08-13contrib/palaver: Don't set channel for PMsJune McEnroe
2020-08-13Fix unintended interception of NICK after registrationJune McEnroe
Another bug caused by trying to support broken clients. I'm annoyed.
2020-08-12Add Additional Components section to READMEJune McEnroe
2020-08-12Document -L / palaver optionJune McEnroe
2020-08-11contrib/palaver: Document service configurationJune McEnroe
2020-08-11contrib/palaver: Add install target and rc scriptJune McEnroe
2020-08-11contrib/palaver: Implement command and notificationsJune McEnroe