瀏覽代碼

[Minor] Do not use pointers to local variables, sigh

pull/4937/head
Vsevolod Stakhov 3 週之前
父節點
當前提交
af228fdec3
沒有連結到貢獻者的電子郵件帳戶。
共有 1 個檔案被更改,包括 11 行新增8 行删除
  1. 11
    8
      src/libserver/rspamd_control.c

+ 11
- 8
src/libserver/rspamd_control.c 查看文件

@@ -368,10 +368,10 @@ void rspamd_pending_control_free(gpointer p)

static inline void
rspamd_control_fill_msghdr(struct rspamd_control_command *cmd,
int attached_fd, struct msghdr *msg)
int attached_fd, struct msghdr *msg,
struct iovec *iov)
{
struct cmsghdr *cmsg;
struct iovec iov;
unsigned char fdspace[CMSG_SPACE(sizeof(int))];

memset(msg, 0, sizeof(*msg));
@@ -388,9 +388,9 @@ rspamd_control_fill_msghdr(struct rspamd_control_command *cmd,
memcpy(CMSG_DATA(cmsg), &attached_fd, sizeof(int));
}

iov.iov_base = cmd;
iov.iov_len = sizeof(*cmd);
msg->msg_iov = &iov;
iov->iov_base = cmd;
iov->iov_len = sizeof(*cmd);
msg->msg_iov = iov;
msg->msg_iovlen = 1;
}

@@ -421,9 +421,10 @@ rspamd_control_stop_pending(struct rspamd_control_reply_elt *elt)

if (!cur->sent) {
struct msghdr msg;
struct iovec iov;

rspamd_main = cur->worker->srv;
rspamd_control_fill_msghdr(&cur->cmd, cur->attached_fd, &msg);
rspamd_control_fill_msghdr(&cur->cmd, cur->attached_fd, &msg, &iov);
ssize_t r = sendmsg(cur->worker->control_pipe[0], &msg, 0);

if (r == sizeof(cur->cmd)) {
@@ -470,7 +471,6 @@ rspamd_control_broadcast_cmd(struct rspamd_main *rspamd_main,
struct rspamd_worker *wrk;
struct rspamd_control_reply_elt *rep_elt, *res = NULL;
gpointer k, v;
struct msghdr msg;
gssize r;

g_hash_table_iter_init(&it, rspamd_main->workers);
@@ -504,7 +504,10 @@ rspamd_control_broadcast_cmd(struct rspamd_main *rspamd_main,

if (g_hash_table_size(wrk->control_events_pending) == 0) {
/* We can send command */
rspamd_control_fill_msghdr(cmd, attached_fd, &msg);
struct msghdr msg;
struct iovec iov;

rspamd_control_fill_msghdr(cmd, attached_fd, &msg, &iov);
r = sendmsg(wrk->control_pipe[0], &msg, 0);

if (r == sizeof(*cmd)) {

Loading…
取消
儲存