git: 5faf08808d63 - stable/13 - libnetmap: reset errno in nmreq_register_decode()

Vincenzo Maffione vmaffione at FreeBSD.org
Sun Sep 26 14:12:23 UTC 2021


The branch stable/13 has been updated by vmaffione:

URL: https://cgit.FreeBSD.org/src/commit/?id=5faf08808d63ec6724ea7b1bd8a34e2d61095829

commit 5faf08808d63ec6724ea7b1bd8a34e2d61095829
Author:     Vincenzo Maffione <vmaffione at FreeBSD.org>
AuthorDate: 2021-04-02 14:31:57 +0000
Commit:     Vincenzo Maffione <vmaffione at FreeBSD.org>
CommitDate: 2021-09-26 14:11:59 +0000

    libnetmap: reset errno in nmreq_register_decode()
    
    The reset is necessary at the beginning of the function, because of
    the errno logic in the error path (set errno to EINVAL if not set).
    If errno is already set when calling the function, and the function
    fails, the previous errno value will be inherited.
    
    (cherry picked from commit ab639bb2873034786cd2ec4d2d9c4489fbf6f424)
---
 lib/libnetmap/nmreq.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/libnetmap/nmreq.c b/lib/libnetmap/nmreq.c
index 7f4b2703d22d..31ddea91f6a5 100644
--- a/lib/libnetmap/nmreq.c
+++ b/lib/libnetmap/nmreq.c
@@ -257,6 +257,8 @@ nmreq_register_decode(const char **pifname, struct nmreq_register *r, struct nmc
 	uint16_t nr_ringid;
 	uint64_t nr_flags;
 
+	errno = 0;
+
 	/* fill the request */
 
 	p_state = P_START;


More information about the dev-commits-src-branches mailing list