Asterisk - The Open Source Telephony Project GIT-master-f36a736
Variables
voicemailpwcheck Namespace Reference

Variables

 context
 
 mailbox
 
 new_pw
 
 old_pw
 
list PW_BLACKLIST
 
list REGEX_BLACKLIST
 
int REQUIRED_LENGTH = 6
 

Detailed Description

 Sample externpasscheck script for use with voicemail.conf

Copyright (C) 2010, Digium, Inc.
Russell Bryant <russell@digium.com>

The externpasscheck option in voicemail.conf allows an external script to
validate passwords when a user is changing it.  The script can enforce password
strength rules.  This script is an example of doing so and implements a check
on password length, a password with too many identical consecutive numbers, or
a password made up of sequential digits.

Variable Documentation

◆ context

context

Definition at line 45 of file voicemailpwcheck.py.

Referenced by __after_bridge_set_goto(), __ast_channel_alloc(), __ast_channel_alloc_ap(), __ast_channel_alloc_with_initializers(), __ast_goto_if_exists(), __has_voicemail(), acf_isexten_exec(), acf_vm_info(), action_atxfer(), action_blind_transfer(), action_dialplan_exec(), action_extensionstate(), action_originate(), action_redirect(), add_action_to_menu_entry(), add_extension(), add_hints(), advanced_options(), append_mailbox(), append_mailbox_mapping(), apply_context(), ast_add_extension(), ast_add_extension_nolock(), ast_app_dtget(), ast_ari_channels_continue_in_dialplan(), ast_async_goto(), ast_async_goto_by_name(), ast_async_goto_if_exists(), ast_blind_transfer_message_create(), ast_bridge_set_after_go_on(), ast_bridge_set_after_goto(), ast_bridge_set_after_h(), ast_bridge_setup_after_goto(), ast_bridge_transfer_blind(), ast_canmatch_extension(), ast_cdr_fork(), ast_channel_by_exten_cb(), ast_channel_get_by_exten(), ast_channel_iterator_by_exten_new(), ast_compile_ael2(), ast_context_add_ignorepat(), ast_context_add_include(), ast_context_add_switch(), ast_context_destroy_by_name(), ast_context_remove_extension(), ast_context_remove_extension_callerid(), ast_context_remove_ignorepat(), ast_context_remove_include(), ast_context_remove_switch(), ast_delete_mwi_state_full(), ast_exists_extension(), ast_explicit_goto(), ast_extension_state(), ast_extension_state_add(), ast_extension_state_add_destroy(), ast_extension_state_add_destroy_extended(), ast_extension_state_add_extended(), ast_extension_state_extended(), ast_findlabel_extension(), ast_get_enum(), ast_get_extension_data(), ast_get_hint(), ast_get_srv(), ast_get_txt(), ast_goto_if_exists(), ast_hint_extension(), ast_hint_extension_nolock(), ast_hint_presence_state(), ast_ignore_pattern(), ast_json_dialplan_cep(), ast_json_dialplan_cep_app(), ast_matchmore_extension(), ast_msg_alloc(), ast_msg_set_context(), ast_mwi_create(), ast_mwi_publish_by_mailbox(), ast_parking_blind_transfer_park(), ast_parking_is_exten_park(), ast_pbx_h_exten_run(), ast_pbx_outgoing_exten(), ast_pbx_outgoing_exten_predial(), ast_publish_mwi_state_full(), ast_res_pjsip_initialize_configuration(), ast_search_dns(), ast_search_dns_ex(), ast_sip_cli_print_sorcery_objectset(), ast_sip_cli_traverse_objects(), ast_spawn_extension(), ast_srv_cleanup(), ast_srv_get_nth_record(), ast_srv_get_record_count(), ast_srv_lookup(), ast_str_get_hint(), AST_TEST_DEFINE(), ast_unreal_new_channels(), ast_vm_mailbox_snapshot_create(), ast_vm_msg_move(), ast_vm_msg_play(), ast_vm_msg_remove(), ast_waitstream_exten(), ast_xml_query(), ast_xml_query_with_namespaces(), attended_transfer_exec(), attended_transfer_properties_alloc(), base_process_party_a(), blind_transfer_bridge(), blind_transfer_exec(), blr_ebl(), blr_txt(), bridge_channel_internal_queue_blind_transfer(), bridge_exec(), build_context(), build_peer(), canmatch(), cc_extension_monitor_init(), cdr_object_create_and_append(), channel_snapshot_dialplan_create(), check_access(), cli_aor_print_body(), cli_aor_print_header(), cli_channel_print_body(), cli_channel_print_header(), cli_channelstats_print_body(), cli_channelstats_print_header(), cli_contact_print_body(), cli_contact_print_header(), cli_endpoint_print_body(), cli_endpoint_print_child_body(), cli_endpoint_print_child_header(), cli_endpoint_print_header(), cli_print_body(), cli_print_header(), cli_show_settings(), cli_unid_print_body(), cli_unid_print_header(), common_exec(), complete_dialplan_add_include(), complete_dialplan_remove_extension(), complete_dialplan_remove_include(), complete_voicemail_move_message(), complete_voicemail_show_mailbox(), complete_voicemail_show_users(), conf_run(), context_merge(), context_used(), copy_plain_file(), copy_to_voicemail(), create_dirpath(), create_queue_member(), delete_existing_cb(), delete_extens(), disa_exec(), dns_parse_answer(), dns_parse_answer_ex(), dns_system_resolver_add_record(), dns_system_resolver_set_response(), do_directory(), dp_lookup(), dundi_canmatch(), dundi_do_lookup(), dundi_do_precache(), dundi_do_query(), dundi_exec(), dundi_exists(), dundi_helper(), dundi_ie_append_eid_appropriately(), dundi_matchmore(), dundi_precache(), dundi_precache_internal(), dundi_query_read(), dundi_show_cache(), dundi_show_hints(), dundifunc_read(), ebl_callback(), enum_callback(), eval_exten_read(), exec(), execute_state_callback(), exists(), expand_gosub_args(), exten_state_publisher_state_cb(), extension_state_add_destroy(), extension_state_cb(), extenspy_exec(), extstate_read(), find_context(), find_context_locked(), find_label_in_current_db(), find_or_create(), find_user(), find_user_realtime(), forward_message(), get_cid_name(), get_resource_display_name(), get_transfer_context(), gosub_allocate_frame(), goto_parser(), grab_transfer(), handle_blind_transfer(), handle_cli_dialplan_remove_extension(), handle_debug_dialplan(), handle_show_dialplan(), handle_voicemail_show_users(), has_voicemail(), hint_read(), hook_on(), hook_state_alloc(), iax2_call(), iax2_canmatch(), iax2_exec(), iax2_exists(), iax2_matchmore(), iax2_transfer(), inboxcount2(), init_hook(), init_queue(), inprocess_count(), internal_extension_state_extended(), invent_message(), ip_identify_match_srv_lookup(), isexten_function_read(), launch_ha_netscript(), leave_voicemail(), load_config(), load_module(), local_alloc(), local_devicestate(), localized_find_extension(), log_exec(), loopback_subst(), lua_find_extension(), lua_pbx_exec(), lua_register_hints(), lua_register_switches(), lua_sort_extensions(), lua_update_registry(), make_dir(), make_email_file(), manager_dialplan_extension_add(), manager_dialplan_extension_remove(), manager_get_mailbox_summary(), manager_match_mailbox(), manager_show_dialplan(), manager_show_dialplan_helper(), manager_state_cb(), manager_status_voicemail_user(), manager_voicemail_move(), manager_voicemail_remove(), matchmore(), messagecount(), metermaidstate(), move_message_from_mailbox(), mwi_create_state(), mwi_state_create_message(), mwi_to_event(), new_subscribe(), onedigit_goto(), orig_exten(), park_local_transfer(), parking_add_extension(), parking_blind_transfer_park(), parking_is_exten_park(), parking_notify_metermaids(), parse_line(), pbx_builtin_background(), pbx_extension_helper(), pbx_find_extension(), pbx_outgoing_attempt(), pbx_parse_location(), pbx_parseable_goto(), pbx_substitute_variables_helper_full_location(), pickup_by_exten(), pickup_exec(), play_mailbox_owner(), play_message(), play_message_by_id(), play_message_callerid(), prep_email_sub_vars(), print_escaped_uri(), print_sanitize_debug(), print_uri_debug(), process_precache(), process_weights(), publish_mwi_to_stasis(), publisher_start(), pubsub_on_rx_mwi_notify_request(), pvalGotoGetTarget(), pvalGotoSetTarget(), queue_mwi_event(), queue_set_param(), raise_exception(), readexten_exec(), realtime_canmatch(), realtime_common(), realtime_directory(), realtime_exec(), realtime_exists(), realtime_matchmore(), realtime_switch_common(), refer_incoming_attended_request(), refer_incoming_blind_request(), remove_message_from_mailbox(), reschedule_precache(), reset_user_pw(), retrydial_exec(), run_externnotify(), rx_data_to_ast_msg(), save_to_folder(), sayname(), search_directory(), search_directory_sub(), sendmail(), sendpage(), separate_mailbox(), set_pvt_defaults(), setup_peer_after_bridge_goto(), SHA1FinalBits(), SHA1Finalize(), SHA1Input(), SHA1PadMessage(), SHA1ProcessMessageBlock(), SHA1Reset(), SHA1Result(), show_debug_helper(), show_dialplan_helper(), show_mailbox_details(), show_mailbox_snapshot(), show_users_realtime(), sip_cli_print_global(), sip_cli_print_system(), socket_process_helper(), spawn_dp_lookup(), spy_sayname(), srv_callback(), stasis_app_control_continue(), store_config_core(), test_vm_api_create_mock_snapshot(), test_vm_api_create_voicemail_files(), try_parking(), try_redirect(), txt_callback(), unreference_cached_app(), vm_authenticate(), vm_execmain(), vm_mailbox_snapshot_create(), vm_msg_move(), vm_msg_play(), vm_msg_remove(), vm_playmsgexec(), vm_sayname(), vmauthenticate(), vmsayname_exec(), wait_for_answer(), and waitstream_core().

◆ mailbox

mailbox

Definition at line 45 of file voicemailpwcheck.py.

Referenced by __has_voicemail(), acf_vm_info(), acf_vmcount_exec(), action_mailboxcount(), action_mailboxstatus(), add_email_attachment(), advanced_options(), alias_mailbox_mapping_create(), allow_and_or_replace_unsolicited(), append_mailbox_mapping(), append_vmu_info_astman(), ast_delete_mwi_state_full(), ast_mwi_add_publisher(), ast_mwi_add_subscriber(), ast_mwi_create(), ast_mwi_mailbox_copy(), ast_mwi_mailbox_delete(), ast_mwi_mailbox_get_id(), ast_mwi_mailbox_get_msgs_new(), ast_mwi_mailbox_get_msgs_old(), ast_mwi_mailbox_set_msgs_new(), ast_mwi_mailbox_set_msgs_old(), ast_mwi_mailbox_update(), ast_mwi_publish_by_mailbox(), ast_mwi_subscribe_pool(), ast_publish_mwi_state_full(), ast_smdi_mwi_set(), ast_smdi_mwi_unset(), ast_vm_mailbox_snapshot_create(), ast_vm_msg_move(), ast_vm_msg_play(), ast_vm_msg_remove(), asterisk_publication_mailboxstate(), build_peer(), chanspy_exec(), common_exec(), complete_voicemail_move_message(), complete_voicemail_show_mailbox(), conf_run(), copy_to_voicemail(), create_unsolicited_mwi_subscriptions(), disa_exec(), extenspy_exec(), find_user(), find_user_realtime(), forward_message(), has_mwi_subscription(), has_voicemail(), inboxcount(), inboxcount2(), inprocess_count(), is_unsolicited_allowed(), mailbox_to_json(), mailbox_to_num(), make_email_file(), manager_get_mailbox_summary(), manager_match_mailbox(), manager_status_voicemail_user(), manager_voicemail_move(), manager_voicemail_remove(), messagecount(), minivm_mwi_exec(), move_message_from_mailbox(), mwi_create_state(), mwi_has_voicemail(), mwi_inboxcount(), mwi_initial_events(), mwi_mailbox_delete(), mwi_mailbox_delete_all(), mwi_mailbox_get(), mwi_mailbox_update(), mwi_messagecount(), mwi_observe_delete(), mwi_on_aor(), mwi_post_event(), mwi_retrieve_then_create_state(), mwi_stasis_subscription_alloc(), mwi_state_create_message(), mwi_to_event(), mwi_validate_for_aor(), notify_message(), num_to_mailbox(), play_dialtone(), play_message_by_id(), prep_email_sub_vars(), publish_mwi_to_stasis(), publishers_create(), publishers_destroy(), pubsub_on_rx_mwi_notify_request(), queue_mwi_event(), realtime_directory(), remove_message_from_mailbox(), reset_user_pw(), save_to_folder(), sayname(), sendmail(), sendpage(), separate_mailbox(), show_mailbox_details(), show_mailbox_snapshot(), smdi_toggle_mwi(), spy_sayname(), stasis_app_mailbox_delete(), stasis_app_mailbox_to_json(), stasis_app_mailbox_update(), stasis_app_mailboxes_to_json(), subscriptions_create(), test_vm_api_create_voicemail_files(), test_vm_api_destroy_mailbox_voicemails(), vm_authenticate(), vm_mailbox_snapshot_create(), vm_msg_move(), vm_msg_play(), vm_msg_remove(), vm_playmsgexec(), vm_sayname(), vmauthenticate(), vmsayname_exec(), xmpp_pubsub_handle_event(), and xmpp_pubsub_publish_mwi().

◆ new_pw

new_pw

Definition at line 45 of file voicemailpwcheck.py.

◆ old_pw

old_pw

Definition at line 45 of file voicemailpwcheck.py.

◆ PW_BLACKLIST

list PW_BLACKLIST

Definition at line 31 of file voicemailpwcheck.py.

◆ REGEX_BLACKLIST

list REGEX_BLACKLIST
Initial value:
1= [
2 ("(?P<digit>\d)(?P=digit){%d}" % (REQUIRED_LENGTH - 1),
3 "%d consecutive numbers that are the same" % REQUIRED_LENGTH)
4]

Definition at line 23 of file voicemailpwcheck.py.

◆ REQUIRED_LENGTH

int REQUIRED_LENGTH = 6

Definition at line 19 of file voicemailpwcheck.py.