Example #1
0
    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;
    }
Example #2
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;
    }