irods
4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
![]() ![]() |
#include <syslog.h>
#include "rodsAgent.hpp"
#include "reconstants.hpp"
#include "rsApiHandler.hpp"
#include "icatHighLevelRoutines.hpp"
#include "miscServerFunct.hpp"
#include "irods_socket_information.hpp"
#include "irods_dynamic_cast.hpp"
#include "irods_signal.hpp"
#include "irods_client_server_negotiation.hpp"
#include "irods_network_factory.hpp"
#include "irods_auth_object.hpp"
#include "irods_auth_factory.hpp"
#include "irods_auth_manager.hpp"
#include "irods_auth_plugin.hpp"
#include "irods_auth_constants.hpp"
#include "irods_environment_properties.hpp"
#include "irods_server_properties.hpp"
#include "irods_server_api_table.hpp"
#include "irods_client_api_table.hpp"
#include "irods_pack_table.hpp"
#include "irods_server_state.hpp"
#include "irods_threads.hpp"
#include "irods_re_plugin.hpp"
#include "irods_re_serialization.hpp"
#include "procLog.h"
#include "initServer.hpp"
#include "sockCommNetworkInterface.hpp"
#include "sslSockComm.h"
#include "sys/socket.h"
#include "sys/un.h"
#include "sys/wait.h"
Go to the source code of this file.
Functions | |
ssize_t | receiveSocketFromSocket (int readFd, int *socket) |
static void | set_agent_process_name (const InformationRequiredToSafelyRenameProcess &info, const int socket_fd) |
int | receiveDataFromServer (int conn_tmp_socket) |
void | irodsAgentSignalExit (int) |
int | runIrodsAgentFactory (sockaddr_un agent_addr) |
static void | set_rule_engine_globals (rsComm_t *_comm) |
int | agentMain (rsComm_t *rsComm) |
Definition at line 562 of file rodsAgent.cpp.
References ASSERT_PASS, irods::AUTH_AGENT_START(), irods::auth_factory(), irods::AUTH_INTERFACE(), rsComm_t::auth_scheme, irods::resource_manager::call_maintenance_operations(), irods::error::code(), rodsServerHost::conn, DISCONN_STATUS, irods::dynamic_cast_hack(), terminate_irods_processes::e, ERROR, getRcatHost(), irods::log(), LOG_ERROR, MASTER_RCAT, irods::resource_manager::need_maintenance_operations(), NULL, irods::error::ok(), READ_HEADER_TIMEOUT, readAndProcClientMsg(), rsComm_t::rError, resc_mgr, rodsLog(), set_rule_engine_globals(), rsComm_t::ssl_do_accept, rsComm_t::ssl_do_shutdown, sslAccept(), sslShutdown(), irods.pypyodbc::status, SUCCESS, svrToSvrConnect(), and SYS_INTERNAL_NULL_INPUT_ERR.
Referenced by runIrodsAgentFactory().
void irodsAgentSignalExit | ( | int | ) |
Definition at line 178 of file rodsAgent.cpp.
References rmProcLog().
Referenced by runIrodsAgentFactory().
Definition at line 85 of file rodsAgent.cpp.
References LOG_ERROR, NULL, receiveSocketFromSocket(), rodsLog(), SP_NEW_SOCK, irods.pypyodbc::status, and SYS_SOCK_READ_ERR.
Referenced by runIrodsAgentFactory().
Definition at line 43 of file rodsAgent.cpp.
Referenced by receiveDataFromServer().
int runIrodsAgentFactory | ( | sockaddr_un | agent_addr | ) |
Definition at line 188 of file rodsAgent.cpp.
References agentMain(), rsComm_t::auth_scheme, irods::environment_properties::capture(), irods::server_properties::capture(), irods::CFG_SERVICE_ROLE_PROVIDER(), chkAllowedUser(), chkLogfileName(), chlDebug(), cleanup(), cleanupAndExit(), irods::client_server_negotiation_for_server(), rsComm_t::clientUser, irods::error::code(), rsComm_t::cookie, irods::CS_NEG_FAILURE(), get_catalog_service_role(), irods::get_client_api_table(), irods::get_pack_table(), irods::get_server_api_table(), getLogfileName(), getRodsEnv(), irods::init_api_table(), initAgent(), initProcLog(), initRsCommWithStartupPack(), irods::environment_properties::instance(), irods::server_properties::instance(), irodsAgentSignalExit(), irods::log(), LOG_DEBUG, LOG_ERROR, LOG_NOTICE, logAgentProc(), LogFd, rsComm_t::myEnv, rsComm_t::negotiation_results, irods::network_factory(), NULL, irods::error::ok(), PASS, irods::re_plugin_globals, receiveDataFromServer(), rsComm_t::reconnAddr, rsComm_t::reconnPort, register_handlers(), irods::error::result(), rmProcLog(), RODS_LOGFILE, rodsEnv::rodsDebug, rodsLog(), userInfo_t::rodsZone, RsApiTable, RULE_ENGINE_TRY_CACHE, sendVersion(), SERVER_NEGOTIATION_ERROR, setRECacheSaltFromEnv(), sockAgentStart, sockAgentStop, irods.pypyodbc::status, SYS_AGENT_INIT_ERR, SYS_FORK_ERROR, SYS_INTERNAL_ERR, SYS_SOCK_ACCEPT_ERR, SYS_SOCK_BIND_ERR, SYS_SOCK_LISTEN_ERR, SYS_SOCK_OPEN_ERR, SYS_SOCK_READ_ERR, SYS_SOCK_SELECT_ERR, rsComm_t::thread_ctx, and userInfo_t::userName.
Referenced by main().
|
static |
Definition at line 70 of file rodsAgent.cpp.
References InformationRequiredToSafelyRenameProcess::argv0, InformationRequiredToSafelyRenameProcess::argv0_size, terminate_irods_processes::e, LOG_ERROR, rodsLog(), and socket_fd_to_remote_address().
|
static |
Definition at line 550 of file rodsAgent.cpp.
References authInfo_t::authFlag, userInfo_t::authInfo, irods::CLIENT_USER_NAME_KW(), irods::CLIENT_USER_PRIV_KW(), irods::CLIENT_USER_ZONE_KW(), rsComm_t::clientUser, irods::PROXY_USER_NAME_KW(), irods::PROXY_USER_PRIV_KW(), irods::PROXY_USER_ZONE_KW(), rsComm_t::proxyUser, userInfo_t::rodsZone, and userInfo_t::userName.
Referenced by agentMain().