X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/1e1ddfac79fbcd052f199500a6493c7f79cb8462..1d28cc061677bd07d9bed48dd84bd5c590247043:/src/OS/os.c-FreeBSD diff --git a/src/OS/os.c-FreeBSD b/src/OS/os.c-FreeBSD index cb0b0bf7f..d65a789c0 100644 --- a/src/OS/os.c-FreeBSD +++ b/src/OS/os.c-FreeBSD @@ -3,6 +3,8 @@ *************************************************/ /* Copyright (c) Jeremy Harris 1995 - 2020 */ +/* Copyright (c) The Exim Maintainers 2021 */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* See the file NOTICE for conditions of use and distribution. */ /* FreeBSD-specific code. This is concatenated onto the generic @@ -16,10 +18,11 @@ Sendfile shim ssize_t os_sendfile(int out, int in, off_t * offp, size_t cnt) { -off_t loff = *offp, written; +off_t loff = offp ? *offp : 0; +off_t written; if (sendfile(in, out, loff, cnt, NULL, &written, 0) < 0) return (ssize_t)-1; -*offp = loff + written; +if (offp) *offp = loff + written; return (ssize_t)written; }