mirror of
https://github.com/tmux/tmux.git
synced 2025-09-03 06:17:04 +00:00
Update imsg*.[ch] from OpenBSD, including bzero->memset.
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: imsg.c,v 1.6 2014/06/30 00:26:22 deraadt Exp $ */
|
||||
/* $OpenBSD: imsg.c,v 1.9 2015/07/12 18:40:49 nicm Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
|
||||
@ -34,12 +34,10 @@ int imsg_get_fd(struct imsgbuf *);
|
||||
|
||||
int available_fds(unsigned int);
|
||||
|
||||
/* TA: 2014-09-08: Note that the original code calls getdtablecount() which is
|
||||
* OpenBSD specific. Until such time that it's ported elsewhere from
|
||||
* <unistd.h>, I've mimicked what OpenSMTPD are doing, by using available_fds()
|
||||
* instead.
|
||||
/*
|
||||
* The original code calls getdtablecount() which is OpenBSD specific. Use
|
||||
* available_fds() from OpenSMTPD instead.
|
||||
*/
|
||||
|
||||
int
|
||||
available_fds(unsigned int n)
|
||||
{
|
||||
@ -68,7 +66,7 @@ void
|
||||
imsg_init(struct imsgbuf *ibuf, int fd)
|
||||
{
|
||||
msgbuf_init(&ibuf->w);
|
||||
bzero(&ibuf->r, sizeof(ibuf->r));
|
||||
memset(&ibuf->r, 0, sizeof(ibuf->r));
|
||||
ibuf->fd = fd;
|
||||
ibuf->w.fd = fd;
|
||||
ibuf->pid = getpid();
|
||||
@ -89,7 +87,8 @@ imsg_read(struct imsgbuf *ibuf)
|
||||
int fd;
|
||||
struct imsg_fd *ifd;
|
||||
|
||||
bzero(&msg, sizeof(msg));
|
||||
memset(&msg, 0, sizeof(msg));
|
||||
memset(&cmsgbuf, 0, sizeof(cmsgbuf));
|
||||
|
||||
iov.iov_base = ibuf->r.buf + ibuf->r.wpos;
|
||||
iov.iov_len = sizeof(ibuf->r.buf) - ibuf->r.wpos;
|
||||
@ -317,7 +316,7 @@ int
|
||||
imsg_flush(struct imsgbuf *ibuf)
|
||||
{
|
||||
while (ibuf->w.queued)
|
||||
if (msgbuf_write(&ibuf->w) < 0)
|
||||
if (msgbuf_write(&ibuf->w) <= 0)
|
||||
return (-1);
|
||||
return (0);
|
||||
}
|
||||
|
Reference in New Issue
Block a user