embox

Форк
0
/
msg_buff_enqueue.c 
25 строк · 509.0 Байт
1
/**
2
 * @file
3
 * @brief
4
 *
5
 * @author Aleksey Zhmulin
6
 * @date 17.07.23
7
 */
8
#include <stddef.h>
9

10
#include <lib/libds/msg_buff.h>
11
#include <lib/libds/ring_buff.h>
12

13
size_t msg_buff_enqueue(struct msg_buff *buf, const void *src, size_t nbyte) {
14
	size_t nwritten;
15

16
	if (!nbyte || (ring_buff_get_space(&buf->rbuf) < nbyte + sizeof(size_t))) {
17
		nwritten = 0;
18
	}
19
	else {
20
		ring_buff_enqueue(&buf->rbuf, &nbyte, sizeof(size_t));
21
		nwritten = ring_buff_enqueue(&buf->rbuf, (void *)src, nbyte);
22
	}
23

24
	return nwritten;
25
}
26

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.