コード例 #1
0
ファイル: slot_test.py プロジェクト: brocade/pyfos
def main(argv):
    filters = ["slot_id"]
    inputs = brcd_util.parse(argv, slot_test, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _rpc_slot_test(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #2
0
def main(argv):
    filters = ["dp_id", "slot"]
    inputs = brcd_util.parse(argv, global_lan_statistics, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _show_global_lan_statistics(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #3
0
def main(argv):
    filters = ["zone_object"]
    inputs = brcd_util.parse(argv, zone_operation_parameters, filters,
                             validate)
    session = brcd_util.getsession(inputs)

    # Store the checksum before editing the zoneDB to use for the
    #  cfgsave at the end
    current_effective = pyfos_zone.effective_configuration.get(session)

    result = do_zone_object_expunge(session, inputs['utilobject'])
    pyfos_util.response_print(result)

    # If the expunge operation succeeds, perform an implicit cfgsave
    # If the expunge operation fails, it should get automatically aborted
    # in the FOS Zone module, so no need to abort the transaction.
    if pyfos_util.is_success_resp(result):
        result = cfgsave.cfgsave(session, current_effective.peek_checksum())

        # If the save operation fails, check to see if there is an open
        #  transaction. If there is, then abort the transaction
        if pyfos_util.is_failed_resp(result):
            print("Expunge succeeded, but the cfgSave failed.")
            current_effective = pyfos_zone.effective_configuration.get(session)
            if current_effective.peek_transaction_token() != 0:
                pyfos_util.response_print(result)
                print("\nAborting the transaction.")
                result = cfgabort.cfgabort(session)
                pyfos_util.response_print(result)

    pyfos_auth.logout(session)
コード例 #4
0
ファイル: lsan_device_show.py プロジェクト: brocade/pyfos
def main(argv):
    filters = []
    inputs = brcd_util.parse(argv, lsan_device, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _show_lsan_device(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #5
0
def main(argv):

    filters = ["name", "group_feature", "feature_pattern"]
    inputs = brcd_util.parse(argv, group, filters)

    grp_obj = inputs['utilobject']
    if grp_obj.peek_name() is None:
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    if (grp_obj.peek_group_feature() is None
            or grp_obj.peek_feature_pattern() is None):
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    # Login to switch
    session = brcd_util.getsession(inputs)

    result = grp_obj.patch(session)
    pyfos_util.response_print(result)

    # Log out
    pyfos_auth.logout(session)
コード例 #6
0
def main(argv):
    # Parse inputs
    filters = [
        "firmware_synchronization_enabled", "http_session_ttl",
        "ezserver_enabled"
    ]
    inputs = brcd_util.parse(argv, chassis_config_settings, filters,
                             _validate_chassis_configuration)

    # Get object
    chassis_configuration_object = inputs['utilobject']

    # Get session
    session = brcd_util.getsession(inputs)

    # Call function
    result = _set_chassis_configuration(session, chassis_configuration_object)
    if result is None:
        print(inputs['utilusage'])
        sys.exit(1)

    # Print response
    pyfos_util.response_print(result)

    # Log out
    pyfos_auth.logout(session)
コード例 #7
0
def main(argv):
    filters = []
    inputs = brcd_util.parse(argv, trunk_area, filters)
    session = brcd_util.getsession(inputs)
    result = trunk_area.get(session)
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #8
0
def main(argv):

    # Print arguments
    # print(sys.argv[1:])

    filters = [
        'certificate_entity', 'certificate_type', 'operation',
        'certificate_name', 'remote_host_ip', 'remote_directory', 'protocol',
        'remote_user_name', 'remote_user_password'
    ]

    inputs = brcd_util.parse(argv, security_certificate_action, filters)

    seccertmgmt_obj = inputs['utilobject']

    # using variables instead of calling functions as the
    # function names are lengthy and difficult to fit the
    # the line length less than 80 chars for flake8.

    if (seccertmgmt_obj.peek_certificate_entity() is None
            or seccertmgmt_obj.peek_certificate_type() is None):
        print("Missing input(s)")
        print(inputs['utilusage'])
        sys.exit()

    session = brcd_util.getsession(inputs)

    result = _export_import_cert(inputs['session'], inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #9
0
def main(argv):
    filters = ["name", "in_order_delivery_enabled"]
    inputs = brcd_util.parse(argv, fibrechannel_switch, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _modify_fibrechannel_switch(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #10
0
def main(argv):
    # Parse inputs
    filters = [
        "insistent_domain_id_enabled", "principal_selection_enabled",
        "principal_priority"
    ]
    inputs = brcd_util.parse(argv, fabric, filters,
                             _validate_fabric_configuration)

    # Get object
    fabric_configuration_object = inputs['utilobject']

    # Get session
    session = brcd_util.getsession(inputs)

    # Call function
    result = _set_fabric_configuration(session, fabric_configuration_object)
    if result is None:
        print(inputs['utilusage'])
        sys.exit(1)

    # Print response
    pyfos_util.response_print(result)

    # Log out
    pyfos_auth.logout(session)
コード例 #11
0
def main(argv):
    filters = ["name", "gigabit_ethernet_member_ports_port"]
    inputs = brcd_util.parse(argv, portchannel, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _rem_member_ports_from_portchannel(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #12
0
def main(argv):
    filters = ["edge_fabric_id"]
    inputs = brcd_util.parse(argv, edge_fabric_alias, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _delete_edge_fabric_alias(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #13
0
def main(argv):
    filters = ["community_name", "community_group", "index"]
    inputs = brcd_util.parse(argv, v1_account, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _modify_v1_account(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #14
0
def main(argv):
    filters = [
        "user_name", "minimum_password_age", "maximum_password_age",
        "warn_on_expire", "enforce_expire"
    ]

    inputs = brcd_util.parse(argv, user_specific_password_cfg, filters)

    user_specific_passrdcfg_obj = inputs['utilobject']

    if user_specific_passrdcfg_obj.peek_user_name() is None:
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    if (user_specific_passrdcfg_obj.peek_minimum_password_age() is None
            and user_specific_passrdcfg_obj.peek_maximum_password_age() is None
            and user_specific_passrdcfg_obj.peek_warn_on_expire() is None
            and user_specific_passrdcfg_obj.peek_hash_type() is None
            and user_specific_passrdcfg_obj.peek_enforce_expire() is None):
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    session = brcd_util.getsession(inputs)

    result = user_specific_passrdcfg_obj.post(session)
    pyfos_util.response_print(result)

    pyfos_auth.logout(session)
コード例 #15
0
ファイル: fcrouter_show.py プロジェクト: brocade/pyfos
def main(argv):
    filters = []
    inputs = brcd_util.parse(argv, routing_configuration, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _show_routing_configuration(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #16
0
ファイル: passwd_modify.py プロジェクト: brocade/pyfos
def main(argv):
    filters = ['user_name', 'old_password', 'new_password']
    inputs = brcd_util.parse(argv, password, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _change_password(inputs['session'], inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #17
0
def main(argv):

    # Print arguments
    # print(sys.argv[1:])

    filters = ['allow_user_name', 'rekey_interval']
    inputs = brcd_util.parse(argv, sshutil, filters)

    sshutil_obj = inputs['utilobject']

    # using variables instead of calling functions as the
    # function names are lengthy and difficult to fit the
    # the line length less than 80 chars for flake8.

    if sshutil_obj.peek_rekey_interval() is None:
        if sshutil_obj.peek_allow_user_name() is None:
            print("Missing input(s)")
            print(inputs['utilusage'])
            sys.exit()

    session = brcd_util.getsession(inputs)

    # pyfos_util.response_print(inputs['utilobject'].displaycustomcli())
    result = _sshutil(inputs['session'], inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #18
0
def main(argv):
    filters = ["name", "pod_license_state"]
    inputs = brcd_util.parse(argv, fibrechannel, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _modify_fibrechannel(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #19
0
def main(argv):
    filters = [
        "activate_no_log_out", "authentication_mode",
        "primary_auth_log_messages"
    ]

    inputs = brcd_util.parse(argv, auth_spec, filters)

    server_obj = inputs['utilobject']

    if (server_obj.peek_authentication_mode() is None
            and server_obj.peek_primary_auth_log_messages() is None
            and server_obj.peek_activate_no_log_out() is None):
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    # Login to switch
    session = brcd_util.getsession(inputs)

    result = server_obj.patch(session)
    pyfos_util.response_print(result)

    # Log out
    pyfos_auth.logout(session)
コード例 #20
0
ファイル: wan_statistics_show.py プロジェクト: brocade/pyfos
def main(argv):
    filters = [
        "priority", "out_unacknowledged_packets_sequence",
        "in_queued_packets_next_sequence", "slow_starts",
        "out_queued_packets_minimum_sequence", "in_window_size",
        "in_queued_packets_minimum_sequence", "out_packets", "connection_id",
        "in_window_size_maximum", "operation_mode", "arl_current",
        "out_queued_packets_next_sequence", "fast_retransmits",
        "slow_retransmits", "in_packets",
        "out_queued_packets_maximum_sequence", "out_window_size",
        "in_queued_out_of_order", "arl_next_reset_algorithm", "circuit_id",
        "rtt_variance", "in_bytes", "maximum_fast_retransmits", "source_port",
        "destination_port", "retransmits", "in_queued_out_of_order_maximum",
        "rtt_maximum", "retransmit_timeout", "duplicate_acknowledgement",
        "out_in_flight_packets", "maximum_retransmits",
        "in_queued_out_of_order_total", "connection_mss", "rtt", "ve_port",
        "arl_maximum", "in_queued_packets_maximum_sequence", "out_bytes",
        "in_window_scale", "congestion_window", "in_queued_packets",
        "out_window_scale", "rtt_variance_maximum", "arl_minimum",
        "slow_start_threshold", "ha_type"
    ]
    inputs = brcd_util.parse(argv, wan_statistics, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _show_wan_statistics(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #21
0
def main(argv):
    filters = ["config"]
    inputs = brcd_util.parse(argv, "auth-token-manager", filters, validate)
    session = brcd_util.getsession(inputs)
    result = _delete_auth_token_manager(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #22
0
def main(argv):
    filters = ["name"]
    inputs = brcd_util.parse(argv, portchannel, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _show_portchannel(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #23
0
def main(argv):
    filters = ["name", "dynamic_load_sharing"]
    inputs = brcd_util.parse(argv, fibrechannel_switch, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _modify_fibrechannel_switch(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #24
0
ファイル: lldp_profile_tlv_add.py プロジェクト: brocade/pyfos
def main(argv):
    filters = ["enabled_tlvs_tlv", "name"]
    inputs = brcd_util.parse(argv, lldp_profile, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _create_lldp_profile(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #25
0
def main(argv):
    filters = ["name", "protocol"]
    inputs = brcd_util.parse(argv, gigabitethernet, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _modify_gigabitethernet(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #26
0
def main(argv):
    filters = ["name", "auto_negotiation_enabled"]
    inputs = brcd_util.parse(argv, portchannel, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _modify_portchannel(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #27
0
def main(argv):
    filters = ["lsan_enforce_tags_tag", "lsan_speed_tag"]
    inputs = brcd_util.parse(argv, routing_configuration, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _delete_routing_configuration(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)
コード例 #28
0
def main(argv):
    filters = [
        "name", "password", "role", "home_virtual_fabric",
        "virtual_fabric_role_id_list_role_id", "account_description",
        "account_enabled", "password_change_enforced", "access_start_time",
        "access_end_time", "chassis_access_role"
    ]

    inputs = brcd_util.parse(argv, user_config, filters)

    user_obj = inputs['utilobject']
    if (user_obj.peek_name() is None or user_obj.peek_password() is None
            or user_obj.peek_role() is None
            or user_obj.peek_virtual_fabric_role_id_list_role_id() == "[]"):
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    # Login to switch
    session = brcd_util.getsession(inputs)

    result = user_obj.post(session)
    pyfos_util.response_print(result)

    # Log out
    pyfos_auth.logout(session)
コード例 #29
0
def main(argv):
    filters = [
        "template_name", "action", "remote_user_name", "remote_host_ip",
        "remote_user_password", "remote_directory",
        "file_transfer_protocol_type"
    ]

    inputs = brcd_util.parse(argv, sec_crypto_cfg_template_action, filters)

    crypto_obj = inputs['utilobject']

    if (crypto_obj.peek_action() is None
            or crypto_obj.peek_template_name() is None
            or crypto_obj.peek_remote_user_name() is None
            or crypto_obj.peek_remote_host_ip() is None
            or crypto_obj.peek_remote_user_password() is None
            or crypto_obj.peek_remote_directory() is None
            or crypto_obj.peek_file_transfer_protocol_type() is None):
        print("Missing command line options")
        print(inputs['utilusage'])
        exit(1)

    # Login to switch
    session = brcd_util.getsession(inputs)

    result = crypto_obj.patch(session)
    pyfos_util.response_print(result)

    # Log out
    pyfos_auth.logout(session)
コード例 #30
0
def main(argv):
    filters = ["slot_port", "action"]
    inputs = brcd_util.parse(argv, lldp_operations, filters, validate)
    session = brcd_util.getsession(inputs)
    result = _rpc_lldp_operations(session, inputs['utilobject'])
    pyfos_util.response_print(result)
    pyfos_auth.logout(session)