File netatalk-CVE-2021-31439.patch of Package netatalk.27687

From 779717df2ed39b701deaf2472b42d59ff50fab7f Mon Sep 17 00:00:00 2001
From: Ralph Boehme <slow@samba.org>
Date: Mon, 22 Nov 2021 05:32:46 +0100
Subject: [PATCH] CVE-2021-31439: libatalk: apply limit checking to DSI write
 offset

Signed-off-by: Ralph Boehme <slow@samba.org>
---
 libatalk/dsi/dsi_stream.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libatalk/dsi/dsi_stream.c b/libatalk/dsi/dsi_stream.c
index c8f859ce1..479d3ca42 100644
--- a/libatalk/dsi/dsi_stream.c
+++ b/libatalk/dsi/dsi_stream.c
@@ -624,6 +624,7 @@ int dsi_stream_receive(DSI *dsi)
   
   /* make sure we don't over-write our buffers. */
   dsi->cmdlen = MIN(ntohl(dsi->header.dsi_len), dsi->server_quantum);
+  dsi->header.dsi_data.dsi_doff = MIN(dsi->header.dsi_data.dsi_doff, dsi->server_quantum);
 
   /* Receiving DSIWrite data is done in AFP function, not here */
   if (dsi->header.dsi_data.dsi_doff) {

openSUSE Build Service is sponsored by