]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/libfido2/src/buf.c
zfs: merge openzfs/zfs@f795e90a1
[FreeBSD/FreeBSD.git] / contrib / libfido2 / src / buf.c
1 /*
2  * Copyright (c) 2018 Yubico AB. All rights reserved.
3  * Use of this source code is governed by a BSD-style
4  * license that can be found in the LICENSE file.
5  * SPDX-License-Identifier: BSD-2-Clause
6  */
7
8 #include "fido.h"
9
10 int
11 fido_buf_read(const unsigned char **buf, size_t *len, void *dst, size_t count)
12 {
13         if (count > *len)
14                 return (-1);
15
16         memcpy(dst, *buf, count);
17         *buf += count;
18         *len -= count;
19
20         return (0);
21 }
22
23 int
24 fido_buf_write(unsigned char **buf, size_t *len, const void *src, size_t count)
25 {
26         if (count > *len)
27                 return (-1);
28
29         memcpy(*buf, src, count);
30         *buf += count;
31         *len -= count;
32
33         return (0);
34 }