Skip to content

Commit

Permalink
SNMPv3 add Cisco AES privacy protocol AES192C AES256C privacy type CI…
Browse files Browse the repository at this point in the history
…SCO-AES-256 (#5698)

* add SNMPv3 Cisco AES

* add SNMPv3 Cisco AES

---------

Co-authored-by: Rich <rich@richud.com>
  • Loading branch information
2 people authored and TheWitness committed Apr 5, 2024
1 parent 94c5505 commit 82056d9
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 6 deletions.
4 changes: 2 additions & 2 deletions cacti.sql
Original file line number Diff line number Diff line change
Expand Up @@ -1987,7 +1987,7 @@ CREATE TABLE host (
snmp_password varchar(50) default NULL,
snmp_auth_protocol char(6) default '',
snmp_priv_passphrase varchar(200) default '',
snmp_priv_protocol char(6) default '',
snmp_priv_protocol char(7) default '',
snmp_context varchar(64) default '',
snmp_engine_id varchar(64) default '',
snmp_port mediumint(8) unsigned NOT NULL default '161',
Expand Down Expand Up @@ -2317,7 +2317,7 @@ CREATE TABLE poller_item (
`snmp_password` varchar(50) NOT NULL default '',
`snmp_auth_protocol` char(6) NOT NULL default '',
`snmp_priv_passphrase` varchar(200) NOT NULL default '',
`snmp_priv_protocol` char(6) NOT NULL default '',
`snmp_priv_protocol` char(7) NOT NULL default '',
`snmp_context` varchar(64) default '',
`snmp_engine_id` varchar(64) default '',
`snmp_port` mediumint(8) unsigned NOT NULL default '161',
Expand Down
4 changes: 3 additions & 1 deletion include/global_arrays.php
Original file line number Diff line number Diff line change
Expand Up @@ -660,7 +660,9 @@
'AES' => __('AES'),
'AES128' => __('AES-128'),
'AES192' => __('AES-192'),
'AES256' => __('AES-256')
'AES192C' => __('AES-192-C'),
'AES256' => __('AES-256'),
'AES256C' => __('AES-256-C')
);

$banned_snmp_strings = array(
Expand Down
6 changes: 6 additions & 0 deletions install/upgrades/1_2_27.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@
*/

function upgrade_to_1_2_27() {
db_install_execute("ALTER TABLE `poller_item` MODIFY `snmp_priv_protocol` char(7) NOT NULL DEFAULT ''");
db_install_execute("ALTER TABLE `host` MODIFY `snmp_priv_protocol` char(7) DEFAULT ''");
db_install_execute("ALTER TABLE `automation_devices` MODIFY `snmp_priv_protocol` char(7) DEFAULT ''");
db_install_execute("ALTER TABLE `automation_snmp_items` MODIFY `snmp_priv_protocol` char(7) DEFAULT ''");
db_install_execute("ALTER TABLE `snmpagent_managers` MODIFY `snmp_priv_protocol` char(7) NOT NULL DEFAULT ''");

$data_input_field_id = db_fetch_cell_prepared('SELECT id FROM data_input_fields WHERE hash = ?', array('35637c344d84d8aa3a4dc50e4a120b3f'));

if ($data_input_field_id > 0) {
Expand Down
2 changes: 1 addition & 1 deletion lib/api_device.php
Original file line number Diff line number Diff line change
Expand Up @@ -1085,7 +1085,7 @@ function api_device_save($id, $device_template_id, $description, $hostname, $snm
$save['snmp_password'] = form_input_validate($snmp_password, 'snmp_password', '', true, 3);
$save['snmp_auth_protocol'] = form_input_validate($snmp_auth_protocol, 'snmp_auth_protocol', "^\[None\]|MD5|SHA|SHA224|SHA256|SHA392|SHA512$", true, 3);
$save['snmp_priv_passphrase'] = form_input_validate($snmp_priv_passphrase, 'snmp_priv_passphrase', '', true, 3);
$save['snmp_priv_protocol'] = form_input_validate($snmp_priv_protocol, 'snmp_priv_protocol', "^\[None\]|DES|AES|AES128|AES192|AES256$", true, 3);
$save['snmp_priv_protocol'] = form_input_validate($snmp_priv_protocol, 'snmp_priv_protocol', "^\[None\]|DES|AES|AES128|AES192|AES192C|AES256|AES256C$", true, 3);
$save['snmp_context'] = form_input_validate($snmp_context, 'snmp_context', '', true, 3);
$save['snmp_engine_id'] = form_input_validate($snmp_engine_id, 'snmp_engine_id', '', true, 3);

Expand Down
4 changes: 2 additions & 2 deletions managers.php
Original file line number Diff line number Diff line change
Expand Up @@ -900,9 +900,9 @@ function form_save() {
if ($save['snmp_version'] == 3) {
$save['snmp_username'] = form_input_validate(get_nfilter_request_var('snmp_username'), 'snmp_username', '', true, 3);
$save['snmp_password'] = form_input_validate(get_nfilter_request_var('snmp_password'), 'snmp_password', '', true, 3);
$save['snmp_auth_protocol'] = form_input_validate(get_nfilter_request_var('snmp_auth_protocol'), 'snmp_auth_protocol', "^\[None\]|MD5|SHA$", true, 3);
$save['snmp_auth_protocol'] = form_input_validate(get_nfilter_request_var('snmp_auth_protocol'), 'snmp_auth_protocol', "^\[None\]|MD5|SHA|SHA224|SHA256|SHA392|SHA512$", true, 3);
$save['snmp_priv_passphrase'] = form_input_validate(get_nfilter_request_var('snmp_priv_passphrase'), 'snmp_priv_passphrase', '', true, 3);
$save['snmp_priv_protocol'] = form_input_validate(get_nfilter_request_var('snmp_priv_protocol'), 'snmp_priv_protocol', "^\[None\]|DES|AES128$", true, 3);
$save['snmp_priv_protocol'] = form_input_validate(get_nfilter_request_var('snmp_priv_protocol'), 'snmp_priv_protocol', "^\[None\]|DES|AES|AES128|AES192|AES192C|AES256|AES256C$", true, 3);
$save['snmp_engine_id'] = form_input_validate(get_request_var_post('snmp_engine_id'), 'snmp_engine_id', '', false, 3);
} else {
$save['snmp_username'] = '';
Expand Down

0 comments on commit 82056d9

Please sign in to comment.