Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package nut for openSUSE:Factory checked in 
at 2026-05-06 19:20:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nut (Old)
 and      /work/SRC/openSUSE:Factory/.nut.new.30200 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "nut"

Wed May  6 19:20:34 2026 rev:84 rq:1351217 version:2.8.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/nut/nut.changes  2025-08-13 18:16:08.581021689 
+0200
+++ /work/SRC/openSUSE:Factory/.nut.new.30200/nut.changes       2026-05-06 
19:24:50.022250742 +0200
@@ -1,0 +2,27 @@
+Mon Apr 27 18:42:07 UTC 2026 - Stanislav Brabec <[email protected]>
+
+- Update to version 2.8.5 (jsc#PED-16186):
+  * Improvements in NUT STARTTLS handling
+  * Several new drivers were added, and older ones improved. Added
+    support for driver name aliasing.
+  * Multiple mishaps fixed about service startup. Numerous changes
+    and new features in upsdrvctl and upssched.
+  * Systemd units for some daemons were revised to honour the MODE
+    setting from nut.conf, if available, to gracefully not-start
+    when explicitly not-requested.
+  * NUT CGI and upsc clients can now optionally output JSON.
+    Modern-looking HTML/CSS/JS templates for upsstats CGI are now
+  * In upsd, extended processing of MAXCONN setting to allow larger
+    values than the operating system allows to handle. The
+    system-provided value can be further limited by
+    NUT_SYSMAXCONN_LIMIT environment variable.
+  * Introduced a configure --enable-shared-private-libs build-time
+    option to provide internal common NUT code as a set of shared
+    libraries.
+  * For details, see
+    
https://networkupstools.org/docs/release-notes.chunked/NUT_Release_Notes.html#_release_notes_for_nut_2_8_5_what_8217_s_new_since_2_8_4
+  * For full changelog, see
+    https://github.com/networkupstools/nut/compare/v2.8.4...v2.8.5
+- Refresh harden_nut-monitor.service.patch
+
+-------------------------------------------------------------------

Old:
----
  nut-2.8.4.tar.gz
  nut-2.8.4.tar.gz.sig

New:
----
  nut-2.8.5.tar.gz
  nut-2.8.5.tar.gz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ nut.spec ++++++
--- /var/tmp/diff_new_pack.iEhmcX/_old  2026-05-06 19:24:50.758281105 +0200
+++ /var/tmp/diff_new_pack.iEhmcX/_new  2026-05-06 19:24:50.758281105 +0200
@@ -1,8 +1,7 @@
 #
 # spec file for package nut
 #
-# Copyright (c) 2025 SUSE LLC and contributors
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -21,8 +20,8 @@
 %define HTMLPATH       %{apache_serverroot}/htdocs/%{name}
 %define MODELPATH      %{_libexecdir}/ups/driver
 %define STATEPATH      %{_localstatedir}/lib/ups
-%define CONFPATH       %{_sysconfdir}/ups
 %define PIDPATH        %{_rundir}
+%define CONFSUBDIR     ups
 %define NUT_USER       upsd
 %define NUT_GROUP      daemon
 %define LBRACE         (
@@ -34,6 +33,13 @@
 %define USBNONHIDDRIVERS %(zcat %{SOURCE0} | tr a-z A-Z | grep -a -A1 _USB     
  | sed -n 
's/.*ATTR{IDVENDOR}==%{QUOTE}%{BACKSLASH}%{LBRACE}[^%{QUOTE}]*%{BACKSLASH}%{RBRACE}%{QUOTE},
 
ATTR{IDPRODUCT}==%{QUOTE}%{BACKSLASH}%{LBRACE}[^%{QUOTE}]*%{BACKSLASH}%{RBRACE}%{QUOTE},
 
MODE=.*/modalias%{LBRACE}usb:v%{BACKSLASH}1p%{BACKSLASH}2d*dc*dsc*dp*ic*isc*ip*%{RBRACE}/p'
 | tr '%{BACKSLASH}n' ' ')
 %define systemdsystemdutildir %(pkg-config --variable=systemdutildir systemd)
 %define bashcompletionsdir %(pkg-config bash-completion 
--variable=completionsdir)
+# FIXME: Find a smarter way to set those from main codebase recipes...
+# Something like `git grep 'version-info' '*.am'` ?
+%define SO_MAJOR_LIBUPSCLIENT  7
+%define SO_MAJOR_LIBNUTCLIENT  2
+%define SO_MAJOR_LIBNUTCLIENTSTUB      1
+%define SO_MAJOR_LIBNUTSCAN    4
+%define SO_MAJOR_LIBNUTCONF    0
 %bcond_with texdoc
 %if 0%{?suse_version} >= 1500
 %bcond_without libi2c
@@ -56,7 +62,7 @@
 %bcond_with libfreeipmi
 %endif
 Name:           nut
-Version:        2.8.4
+Version:        2.8.5
 Release:        0
 Summary:        Network UPS Tools Core (Uninterruptible Power Supply 
Monitoring)
 License:        GPL-2.0-or-later
@@ -153,60 +159,75 @@
 Network UPS Tools is a collection of programs which provide a common
 interface for monitoring and administering UPS hardware.
 
-%package -n libnutclient2
+%package -n libupsclient%{SO_MAJOR_LIBUPSCLIENT}
 Summary:        Network UPS Tools Library (Uninterruptible Power Supply 
Monitoring)
 Group:          System/Libraries
-Conflicts:      libupsclient1
 
-%description -n libnutclient2
-Shared library for the Network UPS Tools.
+%description -n libupsclient%{SO_MAJOR_LIBUPSCLIENT}
+Shared library for the Network UPS Tools, used by its and third-party C 
clients.
 
 Network UPS Tools is a collection of programs which provide a common
 interface for monitoring and administering UPS hardware.
 
-%package -n libnutscan4
+Detailed information about supported hardware can be found in
+%{_docdir}/nut.
+
+%package -n libnutclient%{SO_MAJOR_LIBNUTCLIENT}
 Summary:        Network UPS Tools Library (Uninterruptible Power Supply 
Monitoring)
 Group:          System/Libraries
-Conflicts:      libupsclient1
 
-%description -n libnutscan4
-Shared library for the Network UPS Tools.
+%description -n libnutclient%{SO_MAJOR_LIBNUTCLIENT}
+Shared library for the Network UPS Tools, used by its and third-party C++ 
clients.
 
 Network UPS Tools is a collection of programs which provide a common
 interface for monitoring and administering UPS hardware.
 
-%package -n libupsclient7
+Detailed information about supported hardware can be found in
+%{_docdir}/nut.
+
+%package -n libnutclientstub%{SO_MAJOR_LIBNUTCLIENTSTUB}
 Summary:        Network UPS Tools Library (Uninterruptible Power Supply 
Monitoring)
 Group:          System/Libraries
-Conflicts:      libupsclient1
 
-%description -n libupsclient7
-Shared library for the Network UPS Tools.
+%description -n libnutclientstub%{SO_MAJOR_LIBNUTCLIENTSTUB}
+Shared stub library for the Network UPS Tools with memory-backed 
configurations,
+primarily used by tests and mocks with its and third-party C++ clients.
 
 Network UPS Tools is a collection of programs which provide a common
 interface for monitoring and administering UPS hardware.
 
-%package -n libnutclientstub1
+Detailed information about supported hardware can be found in
+%{_docdir}/nut.
+
+%package -n libnutscan%{SO_MAJOR_LIBNUTSCAN}
 Summary:        Network UPS Tools Library (Uninterruptible Power Supply 
Monitoring)
 Group:          System/Libraries
-Conflicts:      libupsclient1
 
-%description -n libnutclientstub1
-Shared library for the Network UPS Tools.
+%description -n libnutscan%{SO_MAJOR_LIBNUTSCAN}
+Shared library for the Network UPS Tools, used by its nut-scanner and nutconf 
tools,
+and possibly third-party C clients, integrations or tools.
 
 Network UPS Tools is a collection of programs which provide a common
 interface for monitoring and administering UPS hardware.
 
-%package -n libnutconf0
+Detailed information about supported hardware can be found in
+%{_docdir}/nut.
+
+# If not published, nutconf is built with a statically linked library variant
+%package -n libnutconf%{SO_MAJOR_LIBNUTCONF}
 Summary:        Network UPS Tools Library (Uninterruptible Power Supply 
Monitoring)
 Group:          System/Libraries
 
-%description -n libnutconf0
-Shared library for the Network UPS Tools.
+%description -n libnutconf%{SO_MAJOR_LIBNUTCONF}
+Shared library for the Network UPS Tools, used by its nutconf tool,
+and possibly third-party C++ clients, integrations or tools.
 
 Network UPS Tools is a collection of programs which provide a common
 interface for monitoring and administering UPS hardware.
 
+Detailed information about supported hardware can be found in
+%{_docdir}/nut.
+
 %package cgi
 Summary:        Network UPS Tools Web Server Support (UPS Status Pages)
 Group:          Hardware/UPS
@@ -333,8 +354,9 @@
 %configure \
        --docdir=%{_docdir}/%{name} \
        --disable-static \
-       --sysconfdir=%{CONFPATH} \
        --datadir=%{_datadir}/%{name} \
+       --with-confdir-suffix=%{CONFSUBDIR} \
+       --enable-shared-private-libs \
        --with-all \
 %if %{with texdoc}
        --with-doc="man html-single html-chunked pdf" \
@@ -356,6 +378,7 @@
 %if %{without libi2c}
        --without-i2c
 %endif
+       --with-confdir-suffix=%{CONFSUBDIR} \
        --with-htmlpath=%{HTMLPATH} \
        --with-cgipath=%{CGIPATH} \
        --with-statepath=%{STATEPATH} \
@@ -396,6 +419,12 @@
 rm -f %{buildroot}%{_docdir}/%{name}/cables/Makefile*
 rm -f %{buildroot}%{_docdir}/%{name}/cables/*.txt-prepped
 
+# Private libraries. Remove *.so
+rm %{buildroot}%{_libdir}/libnutprivate*.so
+
+# Defined in system-users
+rm %{buildroot}%{_prefix}/lib/sysusers.d/nut-common-sysusers.conf
+
 # Create symlinks for man pages
 %fdupes -s %{buildroot}%{_mandir}
 %fdupes %{buildroot}%{_docdir}/%{name}
@@ -408,13 +437,13 @@
 
 %post
 # Generate initial passwords.
-if grep -q "password = @UPSD_INITIAL_MASTER_PASSWORD@" %{CONFPATH}/upsmon.conf 
%{CONFPATH}/upsd.users; then
+if grep -q "password = @UPSD_INITIAL_MASTER_PASSWORD@" 
%{_sysconfdir}/%{CONFSUBDIR}/upsmon.conf 
%{_sysconfdir}/%{CONFSUBDIR}/upsd.users; then
   UPSD_INITIAL_MASTER_PASSWORD=$(head -c 20 /dev/urandom | md5sum | head -c 10)
-  sed -i s/@UPSD_INITIAL_MASTER_PASSWORD@/$UPSD_INITIAL_MASTER_PASSWORD/ 
%{CONFPATH}/upsmon.conf %{CONFPATH}/upsd.users
+  sed -i s/@UPSD_INITIAL_MASTER_PASSWORD@/$UPSD_INITIAL_MASTER_PASSWORD/ 
%{_sysconfdir}/%{CONFSUBDIR}/upsmon.conf %{_sysconfdir}/%{CONFSUBDIR}/upsd.users
 fi
-if grep -q "password = @UPSD_INITIAL_SLAVE_PASSWORD@" %{CONFPATH}/upsd.users ; 
then
+if grep -q "password = @UPSD_INITIAL_SLAVE_PASSWORD@" 
%{_sysconfdir}/%{CONFSUBDIR}/upsd.users ; then
   UPSD_INITIAL_SLAVE_PASSWORD=$(head -c 20 /dev/urandom | md5sum | head -c 10)
-  sed -i s/@UPSD_INITIAL_SLAVE_PASSWORD@/$UPSD_INITIAL_SLAVE_PASSWORD/ 
%{CONFPATH}/upsd.users
+  sed -i s/@UPSD_INITIAL_SLAVE_PASSWORD@/$UPSD_INITIAL_SLAVE_PASSWORD/ 
%{_sysconfdir}/%{CONFSUBDIR}/upsd.users
 fi
 # Migrate Suspend to Disc to the new convention (bnc#449861 and later 
bnc#871406):
 # It was never on by default, but documentation up to 11.0 recommends
@@ -445,16 +474,24 @@
 %ldconfig_scriptlets -n libupsclient7
 %ldconfig_scriptlets -n libnutconf0
 %else
-%post   -n libnutclient2 -p /sbin/ldconfig
-%postun -n libnutclient2 -p /sbin/ldconfig
-%post   -n libnutclientstub1 -p /sbin/ldconfig
-%postun -n libnutclientstub1 -p /sbin/ldconfig
-%post   -n libnutscan4 -p /sbin/ldconfig
-%postun -n libnutscan4 -p /sbin/ldconfig
-%post   -n libupsclient7 -p /sbin/ldconfig
-%postun -n libupsclient7 -p /sbin/ldconfig
-%post   -n libnutconf0 -p /sbin/ldconfig
-%postun -n libnutconf0 -p /sbin/ldconfig
+%post   -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+%post   -n libnutclient%{SO_MAJOR_LIBNUTCLIENT} -p /sbin/ldconfig
+%postun -n libnutclient%{SO_MAJOR_LIBNUTCLIENT} -p /sbin/ldconfig
+%post   -n libnutclientstub%{SO_MAJOR_LIBNUTCLIENTSTUB} -p /sbin/ldconfig
+%postun -n libnutclientstub%{SO_MAJOR_LIBNUTCLIENTSTUB} -p /sbin/ldconfig
+%post   -n libnutscan%{SO_MAJOR_LIBNUTSCAN} -p /sbin/ldconfig
+%postun -n libnutscan%{SO_MAJOR_LIBNUTSCAN} -p /sbin/ldconfig
+%post   -n libupsclient%{SO_MAJOR_LIBNUTCLIENT} -p /sbin/ldconfig
+%postun -n libupsclient%{SO_MAJOR_LIBNUTCLIENT} -p /sbin/ldconfig
+%post   -n libnutconf%{SO_MAJOR_LIBNUTCONF} -p /sbin/ldconfig
+%postun -n libnutconf%{SO_MAJOR_LIBNUTCONF} -p /sbin/ldconfig
+%define SO_MAJOR_LIBUPSCLIENT  7
+%define SO_MAJOR_LIBNUTCLIENT  2
+%define SO_MAJOR_LIBNUTCLIENTSTUB      1
+%define SO_MAJOR_LIBNUTSCAN    4
+%define SO_MAJOR_LIBNUTCONF    0
+
 %endif
 
 %files
@@ -463,6 +500,7 @@
 %config %{_sysconfdir}/logrotate.d/*
 %{_bindir}/*
 %{_datadir}/%{name}
+%{_libdir}/libnutprivate*.so.*
 %{_mandir}/man5/*%{ext_man}
 %{_mandir}/man7/*%{ext_man}
 %{_mandir}/man8/*%{ext_man}
@@ -473,15 +511,17 @@
 %python_sitelib/PyNUT.py
 %{_sbindir}/*
 %{_udevrulesdir}/*.rules
-%config(noreplace) %{CONFPATH}/hosts.conf
-%config(noreplace) %attr(600,%{NUT_USER},root) %{CONFPATH}/upsd.conf
-%config(noreplace) %attr(600,%{NUT_USER},root) %{CONFPATH}/upsd.users
-%config(noreplace) %attr(600,%{NUT_USER},root) %{CONFPATH}/upsmon.conf
-%dir %{CONFPATH}
-%config(noreplace) %{CONFPATH}/nut.conf
-%config(noreplace) %{CONFPATH}/ups.conf
-%config(noreplace) %{CONFPATH}/upsset.conf
-%config(noreplace) %{CONFPATH}/upssched.conf
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/hosts.conf
+%config(noreplace) %attr(600,%{NUT_USER},root) 
%{_sysconfdir}/%{CONFSUBDIR}/upsd.conf
+%config(noreplace) %attr(600,%{NUT_USER},root) 
%{_sysconfdir}/%{CONFSUBDIR}/upsd.users
+%config(noreplace) %attr(600,%{NUT_USER},root) 
%{_sysconfdir}/%{CONFSUBDIR}/upsmon.conf
+%dir %{_sysconfdir}/%{CONFSUBDIR}
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/nut.conf
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/ups.conf
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/upsset.conf
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/upssched.conf
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/upsstats-modern-list.html
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/upsstats-modern-single.html
 %dir %{MODELPATH}
 %{MODELPATH}/*
 %exclude %{MODELPATH}/snmp-ups
@@ -504,19 +544,19 @@
 %{_mandir}/man8/netxml-ups*%{ext_man}
 %{_mandir}/man8/snmp-ups*%{ext_man}
 
-%files -n libnutclient2
+%files -n libupsclient%{SO_MAJOR_LIBUPSCLIENT}
+%{_libdir}/libupsclient.so.*
+
+%files -n libnutclient%{SO_MAJOR_LIBNUTCLIENT}
 %{_libdir}/libnutclient.so.*
 
-%files -n libnutclientstub1
+%files -n libnutclientstub%{SO_MAJOR_LIBNUTCLIENTSTUB}
 %{_libdir}/libnutclientstub.so.*
 
-%files -n libnutscan4
+%files -n libnutscan%{SO_MAJOR_LIBNUTSCAN}
 %{_libdir}/libnutscan.so.*
 
-%files -n libupsclient7
-%{_libdir}/libupsclient.so.*
-
-%files -n libnutconf0
+%files -n libnutconf%{SO_MAJOR_LIBNUTCONF}
 %{_libdir}/libnutconf.so.*
 
 %files cgi
@@ -525,8 +565,8 @@
 %dir %{apache_serverroot}/htdocs
 %{CGIPATH}
 %{HTMLPATH}
-%config(noreplace) %{CONFPATH}/upsstats-single.html
-%config(noreplace) %{CONFPATH}/upsstats.html
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/upsstats-single.html
+%config(noreplace) %{_sysconfdir}/%{CONFSUBDIR}/upsstats.html
 
 %files devel
 %{_includedir}/*.{h,hpp}

++++++ harden_nut-monitor.service.patch ++++++
--- /var/tmp/diff_new_pack.iEhmcX/_old  2026-05-06 19:24:50.858285230 +0200
+++ /var/tmp/diff_new_pack.iEhmcX/_new  2026-05-06 19:24:50.866285560 +0200
@@ -1,7 +1,7 @@
-Index: b/scripts/systemd/nut-monitor.service.in
+Index: nut-2.8.5/scripts/systemd/nut-monitor.service.in
 ===================================================================
---- a/scripts/systemd/nut-monitor.service.in
-+++ b/scripts/systemd/nut-monitor.service.in
+--- nut-2.8.5.orig/scripts/systemd/nut-monitor.service.in
++++ nut-2.8.5/scripts/systemd/nut-monitor.service.in
 @@ -32,6 +32,17 @@ Documentation=man:nut.conf(@MAN_SECTION_
  Documentation=@NUT_WEBSITE_BASE@/docs/man/nut.conf.html
  
@@ -19,5 +19,5 @@
 +# end of automatic additions 
  EnvironmentFile=-@CONFPATH@/nut.conf
  SyslogIdentifier=%N
- ExecStartPre=-@SYSTEMD_TMPFILES_PROGRAM@ --create 
@systemdtmpfilesdir@/nut-common-tmpfiles.conf
+ # DO NOT actually start if MODE is known and is "none"; however
 

++++++ nut-2.8.4.tar.gz -> nut-2.8.5.tar.gz ++++++
/work/SRC/openSUSE:Factory/nut/nut-2.8.4.tar.gz 
/work/SRC/openSUSE:Factory/.nut.new.30200/nut-2.8.5.tar.gz differ: char 13, 
line 1

++++++ nut-preconfig.patch ++++++
--- /var/tmp/diff_new_pack.iEhmcX/_old  2026-05-06 19:24:50.922287870 +0200
+++ /var/tmp/diff_new_pack.iEhmcX/_new  2026-05-06 19:24:50.930288200 +0200
@@ -1,16 +1,21 @@
-diff -purN a/conf/hosts.conf.sample b/conf/hosts.conf.sample
---- a/conf/hosts.conf.sample   2023-02-28 13:49:32.000000000 +0100
-+++ b/conf/hosts.conf.sample   2023-11-03 19:28:46.048488997 +0100
-@@ -27,3 +27,5 @@
- # MONITOR myups@localhost "Local UPS"
+Index: nut-2.8.5/conf/hosts.conf.sample
+===================================================================
+--- nut-2.8.5.orig/conf/hosts.conf.sample
++++ nut-2.8.5/conf/hosts.conf.sample
+@@ -44,6 +44,8 @@
  # MONITOR [email protected] "Finance department"
  # MONITOR [email protected] "Sierra High School data room #1"
-+
+ 
 +MONITOR myups@localhost "Local UPS"
-diff -purN a/conf/ups.conf.sample b/conf/ups.conf.sample
---- a/conf/ups.conf.sample     2023-10-28 23:02:42.000000000 +0200
-+++ b/conf/ups.conf.sample     2023-11-03 19:29:35.641548694 +0100
-@@ -214,3 +214,8 @@ maxretry = 3
++
+ # -----------------------------------------------------------------------
+ #
+ # Allowed custom template file (adapted copy of upsstats.html) for listing
+Index: nut-2.8.5/conf/ups.conf.sample
+===================================================================
+--- nut-2.8.5.orig/conf/ups.conf.sample
++++ nut-2.8.5/conf/ups.conf.sample
+@@ -251,3 +251,8 @@ maxretry = 3
  #
  # To find out if your driver supports any extra settings, start it with
  # the -h option and/or read the driver's documentation.
@@ -19,10 +24,11 @@
 +       driver = undefined
 +       port = /dev/undefined
 +       desc = "Local UPS"
-diff -purN a/conf/upsd.conf.sample b/conf/upsd.conf.sample
---- a/conf/upsd.conf.sample    2023-09-17 16:34:05.000000000 +0200
-+++ b/conf/upsd.conf.sample    2023-11-03 19:30:18.374644467 +0100
-@@ -183,3 +183,11 @@
+Index: nut-2.8.5/conf/upsd.conf.sample
+===================================================================
+--- nut-2.8.5.orig/conf/upsd.conf.sample
++++ nut-2.8.5/conf/upsd.conf.sample
+@@ -217,3 +217,11 @@
  # or CLI options, regardless of older logging level being higher or lower
  # than the newly found number; a missing (or commented away) value however
  # does not change the previously active logging verbosity.
@@ -34,10 +40,11 @@
 +[upsslave]
 +       password = @UPSD_INITIAL_SLAVE_PASSWORD@
 +       upsmon slave
-diff -purN a/conf/upsmon.conf.sample.in b/conf/upsmon.conf.sample.in
---- a/conf/upsmon.conf.sample.in       2023-10-28 23:36:02.000000000 +0200
-+++ b/conf/upsmon.conf.sample.in       2023-11-03 19:25:57.482732658 +0100
-@@ -117,6 +117,8 @@
+Index: nut-2.8.5/conf/upsmon.conf.sample.in
+===================================================================
+--- nut-2.8.5.orig/conf/upsmon.conf.sample.in
++++ nut-2.8.5/conf/upsmon.conf.sample.in
+@@ -128,6 +128,8 @@
  # MONITOR [email protected] 1 monuser secretpass secondary
  # MONITOR myups@localhost 1 monuser pass primary      # (or secondary)
  

Reply via email to