]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Attempt to pacify Coverity (CID #1604608)
authorNick Porter <nick@portercomputing.co.uk>
Mon, 30 Dec 2024 18:06:11 +0000 (18:06 +0000)
committerNick Porter <nick@portercomputing.co.uk>
Mon, 30 Dec 2024 18:06:11 +0000 (18:06 +0000)
src/modules/rlm_mschap/rlm_mschap.c

index 05420265c5c274d8908de5da82c8577c1ba4ef0e..8fe6ef4634a430f9af188f548216f6e7bcb8b9ea 100644 (file)
@@ -819,6 +819,15 @@ static int write_all(int fd, char const *buf, size_t len) {
                rv = write(fd, buf+done, len-done);
                if (rv <= 0)
                        break;
+
+#ifdef STATIC_ANALYZER
+               /*
+                *      Coverity doesn't appear to know the limits on the
+                *      return value of write() - so beleives an overflow can happen
+                */
+               if (rv > (len - done)) break;
+#endif
+
                done += rv;
        }
        rv = write(fd, "\n", 1);