[OpenNMS/opennms] 0defc0: NMS-20100: referential checks, admin-gated config ...
joseanesONMS via opennms-cvs <[email protected]>
| Newsgroups | gmane.network.opennms.cvs |
|---|---|
| Message-ID | <OpenNMS/opennms/push/refs/heads/jira/NMS-20100/[email protected]> |
Branch: refs/heads/jira/NMS-20100
Home: https://github.com/OpenNMS/opennms
Commit: 0defc0680026df6e523e1cf2c3c2f35a733be8c7
https://github.com/OpenNMS/opennms/commit/0defc0680026df6e523e1cf2c3c2f35a733be8c7
Author: Jose Anes <[email protected]>
Date: 2026-08-29 (Sat, 29 Aug 2026)
Changed paths:
M opennms-config/src/main/java/org/opennms/netmgt/config/DestinationPathManager.java
M opennms-webapp-rest/src/main/java/org/opennms/web/rest/v2/NotificationConfigRestService.java
M opennms-webapp-rest/src/test/java/org/opennms/web/rest/v2/NotificationConfigRestServiceIT.java
M opennms-webapp/src/main/webapp/WEB-INF/applicationContext-spring-security.xml
M ui/src/components/Common/FormField.vue
M ui/src/composables/useBrowserNotifications.ts
Log Message:
-----------
NMS-20100: referential checks, admin-gated config REST, safer edges !smoke
Address the second review round:
Deleting a destination path that event notifications still reference now
returns 409 naming them (rename cascades; delete refuses — the asymmetric
case). Creates and updates validate what the legacy wizard constrained by
dropdown: destinationPath must exist, targets must be a user, group, on-call
role, or email address, commands must exist in notificationCommands.xml, and
event-severity must be one of the canonical names notifd can match.
DestinationPathManager rollback swaps the map reference instead of
clear()+putAll(), so readers of the unmodifiable view never observe a
transient empty map. applyPathOutage parses the critical IP with
InetAddresses.forString, which rejects hostnames instead of resolving them
through a blocking DNS lookup. getServiceNames takes the read lock like its
siblings and previewPathOutageRule drops it (database-only).
/api/v2/notification-config/** is pinned to ROLE_ADMIN in spring security
for every method instead of relying on the in-code check. The browser
notification stream retries with bounded backoff and guards the WebSocket
constructor. FormField's fixed label-row height applies only when a help
icon shares the row, leaving the other consumers' spacing untouched.
To unsubscribe from these emails, change your notification settings at https://github.com/OpenNMS/opennms/settings/notifications
_______________________________________________
Please read the OpenNMS Mailing List FAQ:
http://www.opennms.org/wiki/index.php?page=MailingListFaq
opennms-cvs mailing list
To *unsubscribe* or change your subscription options, see the bottom of this page:
https://lists.sourceforge.net/lists/listinfo/opennms-cvs