Authentication-Results: mail-b.sr.ht; dkim=pass header.d=gmail.com header.i=@gmail.com Received: from mail-yb1-f176.google.com (mail-yb1-f176.google.com [209.85.219.176]) by mail-b.sr.ht (Postfix) with ESMTPS id 48B6811EF38 for <~skeeto/public-inbox@lists.sr.ht>; Mon, 3 Jan 2022 18:19:32 +0000 (UTC) Received: by mail-yb1-f176.google.com with SMTP id d201so77315628ybc.7 for <~skeeto/public-inbox@lists.sr.ht>; Mon, 03 Jan 2022 10:19:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=m6lq+lD60sNOQBf2kwdtomRNMa3Syg62e/l0dXkJagQ=; b=TosoVwn+7yxRF7NesK4syfjk6o+iizq+M9z+LpsvLoFLg6AefiX473TPOBHtO7vkhO FLuLS/YPRRyrAXZQejt9hA+QhRaVgn46kkcObaY7hhQ1CEGkaGrUWZ2N+e47jjnPD8MD TeoQaJ0ZMqx87Zfe2AR9eNg7YGcMqOCzUSre97T+gBQrboC+3zHDn1OvRqb1upzYbhpt 0OrSrBcFsi2PwBeUi0KI7CujHCggP3t433LOpfU6MaK8ozl4pwXhJMrxA/lpvjq1PE7K exWfIQY7pZmfLBR1UyLXT5T58RRhNp/2LJ2V5WDXunzHes3sERwS5BO30JsHbU3wPqie OGgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=m6lq+lD60sNOQBf2kwdtomRNMa3Syg62e/l0dXkJagQ=; b=TgPG+IKe9hAQ2F24cuwkyY9HNy7Z3WdVgGRfx0Dl/fUGEd+OELi5o22T/VJRnaAJrl MpmJkdiRk5CaBBeBmqxz8lqmOLww8pp/nEmVENq03EeSPwP2FpHPxVgqMvV5u3kcvlRt e+benQNrTom7jHjB85BZVZefdWhvG0KqiYgSdDsd/yAsh9DQyb2ViXVdHx8ZczJq4ZZ7 LxA/XkK8zcitRtyxjbdGCGkLpKDUPTHPNotwuuxU6i1KC5PlNo5v08IQesnyQQItDmWj ptFpWdrbHAJj6MgzMcxTmoVKY9EPhvGovcuNnEWn20lf57CncRjDStOOS6cy+YzTwGqV /R7Q== X-Gm-Message-State: AOAM5337JHDKbRb68Q3fVLZcC+zVdiTIUTIRRbTejbJl0q4n8cbwvvdo e/paFYCb3AcFO6KxNLpB4M9hN1h1EV/ZvAKJJ+m8G7dvEg== X-Google-Smtp-Source: ABdhPJz6/55HsHP5KsnT7Tf2Y2hGZ5NbSTWKTBqfih8wcKq5dggmYaNw4dXuiDtr5agcEU5cj5X01ivqvrMxCgSNWH4= X-Received: by 2002:a5b:901:: with SMTP id a1mr3189561ybq.677.1641233971283; Mon, 03 Jan 2022 10:19:31 -0800 (PST) MIME-Version: 1.0 From: Eric Farmer Date: Mon, 3 Jan 2022 13:19:21 -0500 Message-ID: Subject: Re: A new protocol and tool for PNG file attachments To: ~skeeto/public-inbox@lists.sr.ht Content-Type: text/plain; charset="UTF-8" Very cool, and as usual, I love how lean your implementation is. I recalled seeing something similar a few weeks ago: https://github.com/Fusion/pngsource that I first saw discussed on Hacker News: https://news.ycombinator.com/item?id=29657072 I didn't dig too deeply through the implementation to see what was happening under its hood. It seemed like a lot more to unpack-- yours is much easier to read and understand. I have a down-in-the-weeds question: what motivates the `void *` buffer type in `crc32_update`, when it's `unsigned char *` in other places? (I thought there might be some raw structs getting plugged in somewhere, but I didn't see any, it looks like all of the actual buffers being provided are also `unsigned char` arrays?)