Source
zbx_lld_deserialize_item_value(message->data, &itemid, &hostid, &value, &ts, &meta, &lastlogsize, &mtime,
/*
** Copyright (C) 2001-2025 Zabbix SIA
**
** This program is free software: you can redistribute it and/or modify it under the terms of
** the GNU Affero General Public License as published by the Free Software Foundation, version 3.
**
** This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
** without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
** See the GNU Affero General Public License for more details.
**
** You should have received a copy of the GNU Affero General Public License along with this program.
** If not, see <https://www.gnu.org/licenses/>.
**/
/******************************************************************************
* *
* Purpose: registers LLD worker with LLD manager *
* *
* Parameters: socket - [IN] connections socket *
* *
******************************************************************************/
static void lld_register_worker(zbx_ipc_socket_t *socket)
{
pid_t ppid;
ppid = getppid();
zbx_ipc_socket_write(socket, ZBX_IPC_LLD_REGISTER, (unsigned char *)&ppid, sizeof(ppid));
}
/******************************************************************************
* *
* Purpose: Processes LLD task and updates rule state/error in configuration *
* cache and database. *
* *
* Parameters: message - [IN] message with LLD request *
* *
******************************************************************************/
static void lld_process_task(const zbx_ipc_message_t *message)
{
zbx_uint64_t itemid, hostid, lastlogsize;
char *value, *error;
zbx_timespec_t ts;
zbx_item_diff_t diff;
zbx_dc_item_t item;
int errcode, mtime;