[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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.