LogProtoServer * construct_server_proto_plugin(const gchar *name, LogTransport *transport) { LogProtoServerFactory *proto_factory; log_proto_server_options_init(&proto_server_options, configuration); proto_factory = log_proto_server_get_factory(configuration, name); assert_true(proto_factory != NULL, "error looking up proto factory"); return log_proto_server_factory_construct(proto_factory, transport, &proto_server_options); }
static gboolean afsocket_sd_setup_transport(AFSocketSourceDriver *self) { GlobalConfig *cfg = log_pipe_get_config(&self->super.super.super); if (!transport_mapper_apply_transport(self->transport_mapper, cfg)) return FALSE; self->proto_factory = log_proto_server_get_factory(cfg, self->transport_mapper->logproto); if (!self->proto_factory) { msg_error("Unknown value specified in the transport() option, no such LogProto plugin found", evt_tag_str("transport", self->transport_mapper->logproto), NULL); return FALSE; } afsocket_sd_setup_reader_options(self); return TRUE; }