netxms / netxms Goto Github PK
View Code? Open in Web Editor NEWNetXMS - Open Source network and infrastructure monitoring and management
Home Page: https://www.netxms.org
License: Other
NetXMS - Open Source network and infrastructure monitoring and management
Home Page: https://www.netxms.org
License: Other
Dear developer team,
I am currently using and testing NetXMS with CAS authentication and while setting it up, I came across the following two issues, both of which are related to the file src/server/core/cas_validator.cpp
.
The first one is related to the Character buffer char netid[14]
in line 161, which is used as target buffer when extracting the username from the <cas:user>
XML field of the service ticket validation response. With an array length of 14, it allows for an effective username length of 13 characters. As my CAS server uses the e-mail address as the principal ID/username, this length is insufficient.
Is there a specific reason, why the array length has been set to 14 or could it be increased?
The second issue is related to the validation of CAS Proxy Tickets and the string array char *m_proxies[]
in line 56. During proxy ticket validation, it is checked, whether the value of the XML field cas:proxy
or cas:proxies
is present in the *m_proxies
array. This corresponds to line 258 in cas_validator.cpp
. However, the value of the array is initialized with { NULL }
and I did not find any location in the code, where additional values are added to it, causing the proxy ticket validation to always fail and return the error CAS: bad proxy (...). To solve this issue you could introduce a new server configuration parameter (e.g. CASAllowedProxies) to be used in the method void CASReadSettings
(line 62), which then extracts a string array of URLs that are to be used as allowed proxies.
Hopefully, this can help you get rid of these problems.
Kind regards,
fbuehrmann
(Using NetXMS version 3.0-2357, sourcecode was checked both in stable-3.1 as well as master branch)
Net.Interface.Bytes(In/Out)64 raw value does not change, delta is always 0.
This is the description of the error from the netxms forum
I try to update agent to last version but it did not help.
13.0-RELEASE FreeBSD 13.0-RELEASE
NetXMS Core Agent Version 3.8.382 Build 3.8-382-gc0100d1389 (UNICODE)
aloha,
I think there is a typo in master/src/server/core/cas_validator.cpp line 281
-> if (snprintf(full_request, 4096, "GET %s?ticket=%s&service=%s HTTP/1.0\n\n", s_validateURL, ticket, s_service) >= 4096)
It should be "HTTP/1.0\r\n" or just "HTTP/1.0"
Apache Server is giving me a 400 error because of "HTTP/1.0\n"
-> "GET /cas/serviceValidate?ticket=ST-10159-jh3DJSRUbD59ciOtDxEuVFq3XCU-casdev&service=https://test.server.xyz/mon/nxmc-clarity HTTP/1.0\n" 400 4819 "-" "-"
Thank You for the best monitoring Software ever :D
Requesting to have feature where line chart can be requested from dashboard element eg a dial.
Hi,
I'm getting a java error when running nxmc v3.7.144.
an error has occured. See the log file
path to log file.
Was working fine with version 3.5.90.
1612266629697.log
Windows build: windows 10 pro 20H2 19042.746
Java version: v8 update 281 64bit.
I tried creating maintenance journal entries on multiple nodes from the java client as well as the web interface as a user in the admin group and even with the built in admin user, but every time I got the access denied error message. I checked the server logs in /var/log/netxmsd
and there were no log entries related to this issue.
I'm running 4.4.3-1 with PostgreSQL on Ubuntu 22.04.3 LTS.
How to replicate:
2020.01.03 19:52:58.378 *E* [db.drv ] SQL query failed (Query = "INSERT INTO racks (height,top_bottom_num,id) VALUES (?,?,?)"): Duplicate entry '0' for key 'PRIMARY'
2020.01.03 19:53:28.398 *E* [db.drv ] SQL query failed (Query = "INSERT INTO racks (height,top_bottom_num,id) VALUES (?,?,?)"): Duplicate entry '0' for key 'PRIMARY'
2020.01.03 19:53:58.417 *E* [db.drv ] SQL query failed (Query = "INSERT INTO racks (height,top_bottom_num,id) VALUES (?,?,?)"): Duplicate entry '0' for key 'PRIMARY'
2020.01.03 19:54:28.437 *E* [db.drv ] SQL query failed (Query = "INSERT INTO racks (height,top_bottom_num,id) VALUES (?,?,?)"): Duplicate entry '0' for key 'PRIMARY'
We're seeing this repeatedly in the log file:
2023.11.24 15:40:58.509 *E* [db.drv ] SQL query failed (Query = "INSERT INTO alarm_state_changes (record_id,alarm_id,prev_state,new_state,change_time,prev_state_duration,change_by) VALUES (?,?,?,?,?,?,?)"): [Microsoft][ODBC SQL Server Driver]Numeric value out of range
Looks like it's coming from
netxms/src/server/core/alarm.cpp
Line 636 in 1bbfaa9
I can't think of any obvious reason (e.g. we can't have reached MAX(BIGINT) etc.
We're using SQL server- i'm not sure which other information may be helpful in tracking down the issue?
Thanks
А можно ли реализовать механизм при котором бинарная консоль хранит состоянии сессии (открытые вкладки и прочее ) раздельно по каждому серверу некоторый был вход? Просто при перерключении между серверами приходится закрывать кучу бесполезных вкладок и прдеупреждений о невалидности объектов
Если я создавал и компилировал кастомные MIB - то при обновлении консоли (во всяком случае на маке) они затираются эталонными из комплекта поставки. Как вариант - можно сделать возможность хранить кастомные MIB рядом с эталонными и использовать оба варианта? Или хотя бы эталонные класть рядом с кастомными. И дать пользователю выбрать нужный вариант? Зачастую собрать (и найти и скомпилить) кастомные бывает непросто, просто жалко терять. Я регулярно переписываю из своей копии и дерево исходников и готовую базу. В дереве исходников пришлось заменить 3 файла более свежими.
Заранее спасибо.
Actions:
To workaround:
Hi,
I configured a Table DCI in NetXMS for fetching SNMP values from a specific OID.
The general communication through the device which will send the SNMP response seems to be good as "normal" SNMP requests are working.
When running the following command on the NetXMS server I will get this output:
root@dths-netxms-test:~# /usr/bin/nxsnmpwalk -v 2c -c public 172.19.101.100 -p 1690 1.3.6.1.4.1.3058.280.1.1.2.3.1.3
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.9 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.10 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.11 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.12 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.13 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.14 [GAUGE32]: 0
[...]
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.254 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.255 [GAUGE32]: 0
.1.3.6.1.4.1.3058.280.1.1.2.3.1.3.256 [GAUGE32]: 0
using ubuntus snmpwalk will give me the same result.
I started a tcpdump on the netxms server to see what happens there:
It seems that NetXMS will try to fetch everytime two SNMP values (the yellow marked packets are this ones which failed). The response contains "tooBig" as an error message.
The state for the whole table in the list of last values shows "OK". But when opening the table itself, all columns are empty.
# netxmsd -v
NetXMS Server Version 2.2.10 Build 9516 (2.2.10) (UNICODE)
NXCP: 4.48.1.14 (AES-256, Blowfish-256, 3DES, AES-128, Blowfish-128)
Built with: g++ (Ubuntu 5.3.1-14ubuntu2) 5.3.1 20160413
I'm currently learning NXSL to write scripts for executing ssh commands to nodes but have immediately run into issues that I'm unable to pinpoint the issue based on their documentation here: https://www.netxms.org/documentation/nxsl-latest/#_introduction
I've left a post on the support forum outlining my issue and further information on what I was able to verify.
https://www.netxms.org/forum/general-support/unknown-object-attribute-and-method/
1 sub main() {
2 node = Objects.FindNodeByIPAddress($1, null);
3
4 if (node == NULL) {
5 println("Error: node not found.");
6 }
7
8 //println(node->name);
9 println(node->executeSSHCommand("ip address print"));
10}
When I try to execute the code above, it says "Error 30 in line 9: Unknown object's method" claiming the executeSSHCommand method doesn't exist, yet based on Node documentation is does.
When commenting that line out and uncommenting line 8, it says the attribute doesn't exist.
However, in documentation, it does.
I found that the node variable is a String based on the classof(node) and typeof(node) methods. It seems all the FindNode methods are returning strings instead of instances of Node and I have verified this.
My 2nd follow up post on the forum
https://www.netxms.org/forum/index.php?msg=32315
I'm running the follow:
Server version: 4.3.2 (build 4.3-374-g4f45f9ba5c)
Java version: 11.0.10
JVM: OpenJDK 64-Bit Server VM 11.0.10+9
Currently we traverse the node recursively to work out the structure, eg. fetch data from top node, then see if the node contains children, then for each of the children, fetch data, check if it contains more children...
Is it possible to return all the descendants including leaf nodes in a hierarchy structure?
Passive elements in Racks have right click menus in the Rack
view.
However none of the menu elements do anything.
Likely best would be just to remove right click menu on passive elements.
Please could you explain, how can I enable web service check from agent ?
I wonder if it is config changed issue ?
Hi,
I've downloaded 2.2.17 from the website. Trying to compile on FreeBSD, configure aborts:
checking jni.h usability... no
checking jni.h presence... no
checking for jni.h... no
configure: error: *** Cannot find jni.h - check your JDK installation ***
My configure invocation was:
./configure --with-server --with-snmp --with-mysql --sysconfdir=/usr/local/etc/netxms --sharedstatedir=/var/db/netxms --localstatedir=/var/db/netxms --with-jdk --includedir=/usr/local/openjdk8/include
Checking config.log it searched for jni.h under /usr/share/java, for which I don't see any override option. In order to compile 2.2.16 I remember I set the --includedir variable pointing to the openjdk8 installation but it seems to be ignored on 2.2.17. Or I am terribly thick this morning!
When I use your Netxms,and I don't modify password. Mow it show "no more grace logins".
Can you help me?
You might find it useful. Or not. :)
The tool is cppcheck 1.80
[src/agent/core/actions.cpp:51]: (error) Common realloc mistake: 'm_pActionList' nulled but not freed upon failure
[src/agent/core/config.cpp:105]: (error) Common realloc mistake: 'pRawMsg' nulled but not freed upon failure
[src/agent/core/exec.cpp:170]: (error) Common realloc mistake: 'pszCmdLine' nulled but not freed upon failure
[src/agent/core/exec.cpp:391]: (error) Common realloc mistake: 'pszCmdLine' nulled but not freed upon failure
[src/agent/core/exec.cpp:650]: (error) Common realloc mistake: 'pszCmdLine' nulled but not freed upon failure
[src/agent/core/getparam.cpp:441]: (error) Common realloc mistake: 'm_pPushParamList' nulled but not freed upon failure
[src/agent/core/getparam.cpp:482]: (error) Common realloc mistake: 'm_pParamList' nulled but not freed upon failure
[src/agent/core/getparam.cpp:512]: (error) Common realloc mistake: 'm_pEnumList' nulled but not freed upon failure
[src/agent/core/getparam.cpp:545]: (error) Common realloc mistake: 'm_pTableList' nulled but not freed upon failure
[src/agent/core/hddinfo.cpp:197]: (error) Array 'pbValue[40]' accessed at index 41, which is out of bounds.
[src/agent/core/nxagentd.cpp:1501]: (error) Invalid number of character '{' when these macros are defined: 'UNICODE;_WIN32'.
[src/agent/core/register.cpp:78]: (error) Common realloc mistake: 'pRawMsg' nulled but not freed upon failure
[src/agent/subagents/aix/disk.cpp:105]: (error) Common realloc mistake: 'buffer' nulled but not freed upon failure
[src/agent/subagents/aix/lvm.cpp:90] -> [src/agent/subagents/aix/lvm.cpp:31]: (error) Buffer is accessed out of bounds: buffer
[src/agent/subagents/aix/net.cpp:83]: (error) Common realloc mistake: 's_ifaceData' nulled but not freed upon failure
[src/agent/subagents/hpux/proc.cpp:113]: (error) Uninitialized variable: now
[src/agent/subagents/ipso/system.cpp:143]: (error) Invalid number of character '(' when no macros are defined.
[src/agent/subagents/linux/iostat.cpp:104]: (error) Common realloc mistake: 'm_devices' nulled but not freed upon failure
[src/agent/subagents/linux/proc.cpp:279]: (error) Common realloc mistake: 'processCmdLine' nulled but not freed upon failure
[src/agent/subagents/mongodb/db.cpp:381]: (error) Common realloc mistake: 'result' nulled but not freed upon failure
[src/agent/subagents/mongodb/db.cpp:396]: (error) Common realloc mistake: 'result' nulled but not freed upon failure
[src/agent/subagents/mongodb/main.cpp:177]: (error) Common realloc mistake: 's_parameters' nulled but not freed upon failure
[src/agent/subagents/odbcquery/odbcquery.cpp:239]: (error) Common realloc mistake: 'm_pQueryList' nulled but not freed upon failure
[src/agent/subagents/winperf/winperf.cpp:502]: (error) Common realloc mistake: 'localCounters' nulled but not freed upon failure
[src/client/libnxclient/objects.cpp:52]: (error) Uninitialized variable: entry
[src/client/libnxclient/objects.cpp:52]: (error) Uninitialized variable: tmp
[src/db/dbdrv/db2/db2.cpp:131]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/db2/db2.cpp:164]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/db2/db2.cpp:652]: (error) Common realloc mistake: 'temp' nulled but not freed upon failure
[src/db/dbdrv/db2/db2.cpp:602]: (error) Common realloc mistake: 'temp' nulled but not freed upon failure
[src/db/dbdrv/informix/informix.cpp:120]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/informix/informix.cpp:153]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:73]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:78]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:83]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:88]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:93]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:102]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:148]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:153]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:158]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:163]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:168]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mariadb/mariadb.cpp:177]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mssql/mssql.cpp:113]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mssql/mssql.cpp:146]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mssql/mssql.cpp:520]: (error) Common realloc mistake: 'temp' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:71]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:76]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:81]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:86]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:91]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:100]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:146]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:151]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:156]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:161]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:166]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/mysql/mysql.cpp:175]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/odbc/odbc.cpp:123]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/odbc/odbc.cpp:156]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/odbc/odbc.cpp:700]: (error) Common realloc mistake: 'temp' nulled but not freed upon failure
[src/db/dbdrv/odbc/odbc.cpp:752]: (error) Common realloc mistake: 'temp' nulled but not freed upon failure
[src/db/dbdrv/odbc/odbc.cpp:650]: (error) Common realloc mistake: 'temp' nulled but not freed upon failure
[src/db/dbdrv/oracle/oracle.cpp:61]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/oracle/oracle.cpp:97]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/oracle/oracle.cpp:630]: (error) Common realloc mistake: 'm_strings' nulled but not freed upon failure
[src/db/dbdrv/oracle/oracle.cpp:635]: (error) Common realloc mistake: 'm_data' nulled but not freed upon failure
[src/db/dbdrv/pgsql/pgsql.cpp:76]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/pgsql/pgsql.cpp:87]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/pgsql/pgsql.cpp:98]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/pgsql/pgsql.cpp:138]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/pgsql/pgsql.cpp:149]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/pgsql/pgsql.cpp:160]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/sqlite/sqlite.cpp:64]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/db/dbdrv/sqlite/sqlite.cpp:100]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/flow_analyzer/libipfix/ipfix_col.c:292]: (error) Memory leak: new
[src/jansson/pack_unpack.c:517]: (error) Uninitialized variable: key
[src/jansson/pack_unpack.c:517]: (error) Uninitialized variable: value
[src/jansson/value.c:169]: (error) Uninitialized variable: key
[src/jansson/value.c:169]: (error) Uninitialized variable: value
[src/jansson/value.c:185]: (error) Uninitialized variable: key
[src/jansson/value.c:185]: (error) Uninitialized variable: value
[src/jansson/value.c:201]: (error) Uninitialized variable: key
[src/jansson/value.c:201]: (error) Uninitialized variable: value
[src/jansson/value.c:286]: (error) Uninitialized variable: key
[src/jansson/value.c:286]: (error) Uninitialized variable: value1
[src/libnetxms/geolocation.cpp:269]: (error) Syntax Error: AST broken, ternary operator lacks ':'.
[src/libnetxms/hashmapbase.cpp:84]: (error) Uninitialized variable: entry
[src/libnetxms/hashmapbase.cpp:84]: (error) Uninitialized variable: tmp
[src/libnetxms/hashmapbase.cpp:169]: (error) Uninitialized variable: entry
[src/libnetxms/hashmapbase.cpp:169]: (error) Uninitialized variable: tmp
[src/libnetxms/hashmapbase.cpp:187]: (error) Uninitialized variable: entry
[src/libnetxms/hashmapbase.cpp:187]: (error) Uninitialized variable: tmp
[src/libnetxms/log.cpp:633]: (error) Common realloc mistake: 'pMsg' nulled but not freed upon failure
[src/libnetxms/message.cpp:136]: (error) Uninitialized variable: entry
[src/libnetxms/message.cpp:136]: (error) Uninitialized variable: tmp
[src/libnetxms/message.cpp:872]: (error) Uninitialized variable: entry
[src/libnetxms/message.cpp:872]: (error) Uninitialized variable: tmp
[src/libnetxms/message.cpp:907]: (error) Uninitialized variable: entry
[src/libnetxms/message.cpp:907]: (error) Uninitialized variable: tmp
[src/libnetxms/message.cpp:1006]: (error) Uninitialized variable: entry
[src/libnetxms/message.cpp:1006]: (error) Uninitialized variable: tmp
[src/libnetxms/spoll.cpp:133]: (error) Uninitialized variable: rc
[src/libnetxms/strmap.cpp:38]: (error) Uninitialized variable: entry
[src/libnetxms/strmap.cpp:38]: (error) Uninitialized variable: tmp
[src/libnetxms/strmap.cpp:63]: (error) Uninitialized variable: entry
[src/libnetxms/strmap.cpp:63]: (error) Uninitialized variable: tmp
[src/libnetxms/strmap.cpp:76]: (error) Uninitialized variable: entry
[src/libnetxms/strmap.cpp:76]: (error) Uninitialized variable: tmp
[src/libnetxms/strmap.cpp:200]: (error) Uninitialized variable: entry
[src/libnetxms/strmap.cpp:200]: (error) Uninitialized variable: tmp
[src/libnetxms/strmap.cpp:229]: (error) Uninitialized variable: entry
[src/libnetxms/strmap.cpp:229]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:60]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:60]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:204]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:204]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:222]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:222]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:239]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:239]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:260]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:260]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:277]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:277]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:309]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:321]: (error) Uninitialized variable: entry
[src/libnetxms/strmapbase.cpp:309]: (error) Uninitialized variable: tmp
[src/libnetxms/strmapbase.cpp:321]: (error) Uninitialized variable: tmp
[src/libnetxms/strset.cpp:111]: (error) Uninitialized variable: entry
[src/libnetxms/strset.cpp:111]: (error) Uninitialized variable: tmp
[src/libnetxms/strset.cpp:139]: (error) Uninitialized variable: entry
[src/libnetxms/strset.cpp:139]: (error) Uninitialized variable: tmp
[src/libnetxms/strset.cpp:161]: (error) Uninitialized variable: entry
[src/libnetxms/strset.cpp:161]: (error) Uninitialized variable: tmp
[src/libnetxms/strset.cpp:207]: (error) Uninitialized variable: entry
[src/libnetxms/strset.cpp:207]: (error) Uninitialized variable: tmp
[src/libnetxms/strset.cpp:244]: (error) Uninitialized variable: entry
[src/libnetxms/strset.cpp:244]: (error) Uninitialized variable: tmp
[src/libnetxms/strset.cpp:289]: (error) Uninitialized variable: entry
[src/libnetxms/strset.cpp:289]: (error) Uninitialized variable: tmp
[src/libnxlp/eventlog.cpp:102]: (error) Common realloc mistake: 'm_modules' nulled but not freed upon failure
[src/libnxlp/eventlog.cpp:192]: (error) Common realloc mistake: 'm_eventSourceList' nulled but not freed upon failure
[src/libnxsl/variable.cpp:95]: (error) Uninitialized variable: var
[src/libnxsl/variable.cpp:95]: (error) Uninitialized variable: tmp
[src/libnxsl/variable.cpp:117]: (error) Uninitialized variable: var
[src/libnxsl/variable.cpp:117]: (error) Uninitialized variable: tmp
[src/libnxsl/variable.cpp:131]: (error) Uninitialized variable: var
[src/libnxsl/variable.cpp:131]: (error) Uninitialized variable: tmp
[src/libstrophe/rand.c:132]: (warning) Possible null pointer dereference: nonce
[src/libstrophe/resolver.c:766]: (error) Uninitialized variable: insize
[src/nxcproxy/nxcproxy.cpp:307]: (error) Invalid number of character '{' when these macros are defined: 'UNICODE;_WIN32'.
[src/nxcproxy/nxcproxy.cpp:307]: (error) Invalid number of character '{' when these macros are defined: '_WIN32'.
[src/server/core/actions.cpp:560]: (error) Common realloc mistake: 'm_pActionList' nulled but not freed upon failure
[src/server/core/actions.cpp:762]: (error) Common realloc mistake: 'm_pActionList' nulled but not freed upon failure
[src/server/core/agent.cpp:714]: (error) Mismatching allocation and deallocation: value
[src/server/core/alarm.cpp:432]: (error) Syntax Error: AST broken, ternary operator lacks ':'.
[src/server/core/console.cpp:264]: (error) Null pointer dereference: p
[src/server/core/dbwrite.cpp:432]: (error) Uninitialized variable: rq
[src/server/core/dbwrite.cpp:432]: (error) Uninitialized variable: tmp
[src/server/core/dbwrite.cpp:384]: (error) Uninitialized variable: rq
[src/server/core/dbwrite.cpp:384]: (error) Uninitialized variable: tmp
[src/server/core/inaddr_index.cpp:52]: (error) Uninitialized variable: entry
[src/server/core/inaddr_index.cpp:52]: (error) Uninitialized variable: tmp
[src/server/core/inaddr_index.cpp:171]: (error) Uninitialized variable: entry
[src/server/core/inaddr_index.cpp:171]: (error) Uninitialized variable: tmp
[src/server/core/inaddr_index.cpp:204]: (error) Uninitialized variable: entry
[src/server/core/inaddr_index.cpp:204]: (error) Uninitialized variable: tmp
[src/server/core/inaddr_index.cpp:224]: (error) Uninitialized variable: entry
[src/server/core/inaddr_index.cpp:224]: (error) Uninitialized variable: tmp
[src/server/core/logs.cpp:141]: (error) Common realloc mistake: 's_regList' nulled but not freed upon failure
[src/server/core/modules.cpp:85]: (error) Common realloc mistake: 'g_pModuleList' nulled but not freed upon failure
[src/server/core/netobj.cpp:2544]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2552]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2559]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2565]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2571]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2577]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2585]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2594]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2603]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2610]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2618]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2627]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2637]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2644]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2664]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2672]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2679]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2685]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2693]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2731]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2791]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2831]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2855]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/netobj.cpp:2884]: (error) Common realloc mistake: 'pText' nulled but not freed upon failure
[src/server/core/npe.cpp:253]: (error) Common realloc mistake: 'pData' nulled but not freed upon failure
[src/server/core/radius.cpp:222]: (error) Uninitialized variable: garbage
[src/server/libnxsrv/agent.cpp:200]: (error) Common realloc mistake: 'rawMsg' nulled but not freed upon failure
[src/server/libnxsrv/agent.cpp:202]: (error) Common realloc mistake: 'decryptionBuffer' nulled but not freed upon failure
[src/server/netxmsd/netxmsd.cpp:369]: (error) Invalid number of character '{' when these macros are defined: 'UNICODE;_WIN32'.
[src/server/netxmsd/netxmsd.cpp:369]: (error) Invalid number of character '{' when these macros are defined: '_WIN32'.
[src/server/netxmsd/netxmsd.cpp:369]: (error) Invalid number of character '{' when these macros are defined: '_WIN32;_WITH_ENCRYPTION'.
[src/server/spe/nn.cpp:46]: (error) Mismatching allocation and deallocation: NeuralNetworkNode::weights
[src/server/spe/nn.cpp:47]: (error) Mismatching allocation and deallocation: NeuralNetworkNode::weightGradients
[src/server/tools/nxdbmgr/export.cpp:51]: (error) Common realloc mistake: 'out' nulled but not freed upon failure
[src/server/tools/nxdbmgr/upgrade.cpp:236]: (error) Common realloc mistake: 'query' nulled but not freed upon failure
[src/snmp/libnxsnmp/snapshot.cpp:54]: (error) Uninitialized variable: entry
[src/snmp/libnxsnmp/snapshot.cpp:54]: (error) Uninitialized variable: tmp
[src/sqlite/sqlite3.c:55498]: (warning) Possible null pointer dereference: pbOpen
[src/sqlite/sqlite3.c:100257]: (warning) Possible null pointer dereference: pName2
(information) Too many #ifdef configurations - cppcheck only checks 12 configurations. Use --force to check all configurations. For more details, use --enable=information.
Note:If I have missed or if you want to point on document please do so I would like to go through it.
This vulnerability exposes the account password, so that the attacker can see the network internal host information, has a great harm.
When I looked at the data packets analyzed for the login site【http://192.168.163.133:8080/nxmc-clarity】, I found that the password was presented in clear text in JSON, as follows【admin:admin,password:test2】:
The following error appears every 10 minutes:
Script (DCI::P M103_A::824::InstanceFilter) execution error: Error 17 in line 7: Argument is not of string type and cannot be converted to string
I traced back the issue to the instance filter of the toner level
netxms/contrib/templates/printers.xml
Line 49 in 06b9153
However I don't understand why this error happens, because when I check the values in the MIB Explorer of the printer (P M103_A
) I can see the two levels (although they report -2).
.1.3.6.1.2.1.43.11.1.1.6.1.1 [STRING] = C-EXV 14
.1.3.6.1.2.1.43.11.1.1.6.1.2 [STRING] = Waste Toner
.1.3.6.1.2.1.43.11.1.1.9.1.1 [INTEGER] = -2
.1.3.6.1.2.1.43.11.1.1.9.1.2 [INTEGER] = -2
The printer is a Canon iR2018
I try to install nexms from source in FreeBSD 13.
uname -a
FreeBSD 13.0-RELEASE #0 releng/13.0-n244733-ea31abc261f: Fri Apr 9 04:24:09 UTC 2021 [email protected]:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
When i start make I have this error:
make all-recursive
Making all in .
Making all in m4
Making all in build
./updatetag.pl
Cannot read git tag
make all-am
./updatetag.pl
Cannot read git tag
Making all in src
Making all in jansson
CC libnxjansson_la-dump.lo
CC libnxjansson_la-error.lo
CC libnxjansson_la-hashtable.lo
CC libnxjansson_la-hashtable_seed.lo
CC libnxjansson_la-load.lo
CC libnxjansson_la-memory.lo
CC libnxjansson_la-pack_unpack.lo
CC libnxjansson_la-strbuffer.lo
CC libnxjansson_la-strconv.lo
CC libnxjansson_la-utf.lo
CC libnxjansson_la-value.lo
CCLD libnxjansson.la
Making all in libnetxms
CXX libnetxms_la-array.lo
In file included from array.cpp:24:
In file included from ./libnetxms.h:28:
../../include/nms_util.h:3859:27: error: functions that differ only in their return type cannot be overloaded
void LIBNETXMS_EXPORTABLE qsort_s(void *base, size_t nmemb, size_t size, int (*compare)(void *, const void *, const void *), void *context);
~~~~ ^
/usr/include/stdlib.h:359:10: note: previous declaration is here
errno_t qsort_s(void *, rsize_t, rsize_t,
~~~~~~~ ^
array.cpp:374:4: error: no matching function for call to 'qsort_s'
qsort_s(m_data, m_size, m_elementSize, cb, context);
^~~~~~~
/usr/include/stdlib.h:359:10: note: candidate function not viable: no known conversion from 'int (*)(void *, const void *, const void *)' to 'int (*)(const void *, const void *, void *)' for 4th argument
errno_t qsort_s(void *, rsize_t, rsize_t,
^
2 errors generated.
*** Error code 1
Stop.
make[3]: stopped in /usr/home/kaan/netxms-3.8.314/src/libnetxms
*** Error code 1
Stop.
make[2]: stopped in /usr/home/kaan/netxms-3.8.314/src
*** Error code 1
this is my topic on the forum
Несколько странные результаты опроса сервером конифгруации устройства.
Имеем около 50 QTECH QSW-4610T с разынм количеством портов. После опроса получаем вот такой OID.
SNMP Object ID=.1.3.6.1.4.1.27514.1.1.1.480
При ручном опросе говорят идите в пеший маршрут
nxadmin@netxms4:~$ snmpwalk -c public -v 2c 10.102.7.1 .1.3.6.1.4.1.27514.1.1
iso.3.6.1.4.1.27514.1.1 = No Such Object available on this agent at this OID
В миб файле такого тоже нет. Происходит по естественно по всем коммутаторам.
MIB file
Где порылась собака?
PS: Пробовал ручками поменять OID в базе nodes.snmp_oid - не работает.
Migration to TimescaleDB failed, if a source idata_XXX table contain multiple records with same item_id and data_timestamp:
Migrating table idata_287 to data
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1642, 2023-03-04 13:54:13+03) already exists.)
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1642, 2023-03-04 13:39:13+03) already exists.)
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1641, 2023-03-04 12:51:11+03) already exists.)
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1641, 2023-03-04 12:50:11+03) already exists.)
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1641, 2023-03-04 13:23:13+03) already exists.)
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1642, 2023-03-04 13:24:13+03) already exists.)
ERROR: unable to insert data to destination table (23505 ERROR: duplicate key value violates unique constraint "349_349_idata_sc_30_pkey"
DETAIL: Key (item_id, idata_timestamp)=(1641, 2023-03-04 13:24:13+03) already exists.)
In my situation duplicate records can contain the same values or different values.
Probably, function MigrateSingleDataTableToTSDB https://github.com/netxms/netxms/blob/master/src/server/tools/nxdbmgr/migrate.cpp should check target table for existance of records with this item_id and idata_timestamp (unique key pair) or skip migration of failed record and continue with next one.
Using DISTINCT in a select clause con solve situation if the same values in duplicates .
With some modifications to migrate.cpp got working migration (patch attached ) Of course this is not best solution, but solved my problem. Failed records skipped and import continues.
First migration MariaDB -> PostgreSQL - saved about 20G
Second Migration PostgreSQL -> TimescaleDB in progress
Ubuntu 18.04 NetXMS 4.3.2 MariaDB 10.1.4
migrate.cpp.patch
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.