int getRodsEnvFromEnv( rodsEnv* _env ) { if ( !_env ) { printf( "ERROR - getRodsEnvFromEnv :: null rodsEnv\n" ); fflush( stdout ); return SYS_INVALID_INPUT_PARAM; } int status = get_legacy_ssl_variables( _env ); if ( status < 0 ) { return status; } std::string env_var = irods::CFG_IRODS_USER_NAME_KW; capture_string_env_var( env_var, _env->rodsUserName ); env_var = irods::CFG_IRODS_HOST_KW; capture_string_env_var( env_var, _env->rodsHost ); env_var = irods::CFG_IRODS_XMSG_HOST_KW; capture_string_env_var( env_var, _env->xmsgHost ); env_var = irods::CFG_IRODS_PORT_KW; capture_integer_env_var( env_var, _env->rodsPort ); env_var = irods::CFG_IRODS_XMSG_PORT_KW; capture_integer_env_var( env_var, _env->xmsgPort ); env_var = irods::CFG_IRODS_HOME_KW; capture_string_env_var( env_var, _env->rodsHome ); env_var = irods::CFG_IRODS_CWD_KW; capture_string_env_var( env_var, _env->rodsCwd ); env_var = irods::CFG_IRODS_AUTHENTICATION_SCHEME_KW; capture_string_env_var( env_var, _env->rodsAuthScheme ); env_var = irods::CFG_IRODS_DEFAULT_RESOURCE_KW; capture_string_env_var( env_var, _env->rodsDefResource ); env_var = irods::CFG_IRODS_ZONE_KW; capture_string_env_var( env_var, _env->rodsZone ); env_var = irods::CFG_IRODS_CLIENT_SERVER_POLICY_KW; capture_string_env_var( env_var, _env->rodsClientServerPolicy ); env_var = irods::CFG_IRODS_CLIENT_SERVER_NEGOTIATION_KW; capture_string_env_var( env_var, _env->rodsClientServerNegotiation ); env_var = irods::CFG_IRODS_ENCRYPTION_KEY_SIZE_KW; capture_integer_env_var( env_var, _env->rodsEncryptionKeySize ); env_var = irods::CFG_IRODS_ENCRYPTION_SALT_SIZE_KW; capture_integer_env_var( env_var, _env->rodsEncryptionSaltSize ); env_var = irods::CFG_IRODS_ENCRYPTION_NUM_HASH_ROUNDS_KW; capture_integer_env_var( env_var, _env->rodsEncryptionNumHashRounds ); env_var = irods::CFG_IRODS_ENCRYPTION_ALGORITHM_KW; capture_string_env_var( env_var, _env->rodsEncryptionAlgorithm ); env_var = irods::CFG_IRODS_DEFAULT_HASH_SCHEME_KW; capture_string_env_var( env_var, _env->rodsDefaultHashScheme ); env_var = irods::CFG_IRODS_MATCH_HASH_POLICY_KW; capture_string_env_var( env_var, _env->rodsMatchHashPolicy ); env_var = irods::CFG_IRODS_GSI_SERVER_DN_KW; capture_string_env_var( env_var, _env->rodsServerDn ); _env->rodsLogLevel = 0; env_var = irods::CFG_IRODS_LOG_LEVEL_KW; capture_integer_env_var( env_var, _env->rodsLogLevel ); if ( _env->rodsLogLevel ) { rodsLogLevel( _env->rodsLogLevel ); /* go ahead and process it */ } memset( _env->rodsAuthFileName, 0, sizeof( _env->rodsAuthFileName ) ); env_var = irods::CFG_IRODS_AUTHENTICATION_FILE_NAME_KW; capture_string_env_var( env_var, _env->rodsAuthFileName ); if ( strlen( _env->rodsAuthFileName ) > 0 ) { rstrcpy( authFileName, _env->rodsAuthFileName, LONG_NAME_LEN ); } env_var = irods::CFG_IRODS_DEBUG_KW; capture_string_env_var( env_var, _env->rodsDebug ); // legacy ssl environment variables env_var = irods::CFG_IRODS_SSL_CA_CERTIFICATE_PATH; capture_string_env_var( env_var, _env->irodsSSLCACertificatePath ); env_var = irods::CFG_IRODS_SSL_CA_CERTIFICATE_FILE; capture_string_env_var( env_var, _env->irodsSSLCACertificateFile ); env_var = irods::CFG_IRODS_SSL_VERIFY_SERVER; capture_string_env_var( env_var, _env->irodsSSLVerifyServer ); env_var = irods::CFG_IRODS_SSL_VERIFY_SERVER; capture_string_env_var( env_var, _env->irodsSSLVerifyServer ); env_var = irods::CFG_IRODS_SSL_CERTIFICATE_CHAIN_FILE; capture_string_env_var( env_var, _env->irodsSSLCertificateChainFile ); env_var = irods::CFG_IRODS_SSL_CERTIFICATE_KEY_FILE; capture_string_env_var( env_var, _env->irodsSSLCertificateKeyFile ); env_var = irods::CFG_IRODS_SSL_DH_PARAMS_FILE; capture_string_env_var( env_var, _env->irodsSSLDHParamsFile ); return 0; }
int getRodsEnvFromEnv( rodsEnv* _env ) { if( !_env ) { printf( "ERROR - getRodsEnvFromEnv :: null rodsEnv\n" ); fflush( stdout ); return SYS_INVALID_INPUT_PARAM; } std::string env_var = irods::CFG_IRODS_USER_NAME_KW; capture_string_env_var( env_var, _env->rodsUserName ); env_var = irods::CFG_IRODS_HOST_KW; capture_string_env_var( env_var, _env->rodsHost ); env_var = irods::CFG_IRODS_XMSG_HOST_KW; capture_string_env_var( env_var, _env->xmsgHost ); env_var = irods::CFG_IRODS_PORT_KW; capture_integer_env_var( env_var, _env->rodsPort ); env_var = irods::CFG_IRODS_XMSG_PORT_KW; capture_integer_env_var( env_var, _env->xmsgPort ); env_var = irods::CFG_IRODS_HOME_KW; capture_string_env_var( env_var, _env->rodsHome ); env_var = irods::CFG_IRODS_CWD_KW; capture_string_env_var( env_var, _env->rodsCwd ); env_var = irods::CFG_IRODS_AUTHENTICATION_SCHEME_KW; capture_string_env_var( env_var, _env->rodsAuthScheme ); env_var = irods::CFG_IRODS_DEFAULT_RESOURCE_KW; capture_string_env_var( env_var, _env->rodsDefResource ); env_var = irods::CFG_IRODS_ZONE_KW; capture_string_env_var( env_var, _env->rodsZone ); env_var = irods::CFG_IRODS_CLIENT_SERVER_POLICY_KW; capture_string_env_var( env_var, _env->rodsClientServerPolicy ); env_var = irods::CFG_IRODS_CLIENT_SERVER_NEGOTIATION_KW; capture_string_env_var( env_var, _env->rodsClientServerNegotiation ); env_var = irods::CFG_IRODS_ENCRYPTION_KEY_SIZE_KW; capture_integer_env_var( env_var, _env->rodsEncryptionKeySize ); env_var = irods::CFG_IRODS_ENCRYPTION_SALT_SIZE_KW; capture_integer_env_var( env_var, _env->rodsEncryptionSaltSize ); env_var = irods::CFG_IRODS_ENCRYPTION_NUM_HASH_ROUNDS_KW; capture_integer_env_var( env_var, _env->rodsEncryptionNumHashRounds ); env_var = irods::CFG_IRODS_ENCRYPTION_ALGORITHM_KW; capture_string_env_var( env_var, _env->rodsEncryptionAlgorithm ); env_var = irods::CFG_IRODS_DEFAULT_HASH_SCHEME_KW; capture_string_env_var( env_var, _env->rodsDefaultHashScheme ); env_var = irods::CFG_IRODS_MATCH_HASH_POLICY_KW; capture_string_env_var( env_var, _env->rodsMatchHashPolicy ); env_var = irods::CFG_IRODS_GSI_SERVER_DN_KW; capture_string_env_var( env_var, _env->rodsServerDn ); _env->rodsLogLevel = 0; env_var = irods::CFG_IRODS_LOG_LEVEL_KW; capture_integer_env_var( env_var, _env->rodsLogLevel ); if ( _env->rodsLogLevel ) { rodsLogLevel( _env->rodsLogLevel ); /* go ahead and process it */ } memset( _env->rodsAuthFileName, 0, sizeof( _env->rodsAuthFileName ) ); env_var = irods::CFG_IRODS_AUTHENTICATION_FILE_NAME_KW; capture_string_env_var( env_var, _env->rodsAuthFileName ); if( strlen( _env->rodsAuthFileName ) > 0 ) { rstrcpy( authFileName, _env->rodsAuthFileName, LONG_NAME_LEN ); } env_var = irods::CFG_IRODS_DEBUG_KW; capture_string_env_var( env_var, _env->rodsDebug ); return 0; }