Hello community,

here is the log from the commit of package openmpi2 for openSUSE:Factory 
checked in at 2017-09-20 17:12:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openmpi2 (Old)
 and      /work/SRC/openSUSE:Factory/.openmpi2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openmpi2"

Wed Sep 20 17:12:42 2017 rev:6 rq:527336 version:2.1.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/openmpi2/openmpi2-testsuite.changes      
2017-09-12 19:56:09.284666820 +0200
+++ /work/SRC/openSUSE:Factory/.openmpi2.new/openmpi2-testsuite.changes 
2017-09-20 17:12:50.992213030 +0200
@@ -1,0 +2,18 @@
+Tue Sep 19 14:36:31 UTC 2017 - [email protected]
+
+- Remove --disable-mca-dso
+  Related bug was due to openmpi/*.so wrongly packaged as devel
+
+-------------------------------------------------------------------
+Fri Sep 15 13:39:33 UTC 2017 - [email protected]
+
+- Reenable fortan08 bindings as gcc >= 5 is now the default
+- Remove devel-headers configure option (reserved for MPI plugins developers)
+
+-------------------------------------------------------------------
+Tue Sep 12 16:12:29 UTC 2017 - [email protected]
+
+- Update to 2.1.1.186.9a3ac9803c
+- Drop openmpi-pmix-configure-ac.patch as it was merged upstream
+
+-------------------------------------------------------------------
@@ -5 +23 @@
-  * Too manu bug fixes to list. See NEWS
+  * Too many bug fixes to list. See NEWS
openmpi2.changes: same change

Old:
----
  openmpi-2.1.1.176.7aa585d4ff.tar.bz2
  openmpi-pmix-configure-ac.patch

New:
----
  openmpi-2.1.1.186.9a3ac9803c.tar.bz2

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

Other differences:
------------------
++++++ openmpi2-testsuite.spec ++++++
--- /var/tmp/diff_new_pack.I8MmaL/_old  2017-09-20 17:12:52.412013165 +0200
+++ /var/tmp/diff_new_pack.I8MmaL/_new  2017-09-20 17:12:52.416012603 +0200
@@ -52,7 +52,7 @@
 %endif
 %endif
 
-%define git_ver .176.7aa585d4ff
+%define git_ver .186.9a3ac9803c
 
 #############################################################################
 #
@@ -70,7 +70,6 @@
 Source0:        openmpi-%{version}%{git_ver}.tar.bz2
 Source1:        baselibs.conf
 Source2:        openmpi2-rpmlintrc
-Patch0:         openmpi-pmix-configure-ac.patch
 Provides:       mpi
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  Modules
@@ -243,7 +242,6 @@
 #############################################################################
 %prep
 %setup -q -n  openmpi-%{version}%{git_ver}
-%patch0
 
 #############################################################################
 #
@@ -273,10 +271,7 @@
            --with-ucx \
            --with-ucx-libdir=/usr/%_lib \
 %endif
-           --with-devel-headers \
               --with-package-string="Open MPI2 Distribution for SUSE" \
-              --enable-mpi-fortran=usempi \
-              --disable-mca-dso \
               --disable-silent-rules \
                   --disable-wrapper-rpath
 make %{?_smp_mflags}
@@ -392,6 +387,8 @@
 %endif # !openmpi2-testsuite
 
 %if "%{name}" == "openmpi2"
+%fdupes -s %{buildroot}%{mpi_mandir}
+%fdupes -s %{buildroot}%{mpi_datadir}
 
 #############################################################################
 #
@@ -553,16 +550,20 @@
 %defattr(-, root, root, -)
 %dir %{mpi_libdir}
 %mpi_libdir/*.so.*
+%{mpi_libdir}/openmpi/*.so
 
 %files devel
 %defattr(-, root, root, -)
 %dir %{mpi_libdir}/openmpi
 %dir %{mpi_libdir}/pkgconfig
 %{mpi_includedir}
-%{mpi_libdir}/openmpi/*.so
 %{mpi_libdir}/*.so
 %{mpi_libdir}/pkgconfig/*.pc
 %{mpi_libdir}/mpi.mod
+%if 0%{?suse_version} >= 1320
+%{mpi_libdir}/mpi_f08*.mod
+%{mpi_libdir}/pmpi_f08*.mod
+%endif
 %{mpi_bindir}/mpiCC
 %{mpi_bindir}/mpic++
 %{mpi_bindir}/mpicc
@@ -572,8 +573,6 @@
 %{mpi_bindir}/mpif90
 %{mpi_bindir}/mpifort
 %{mpi_bindir}/opal_wrapper
-%{mpi_bindir}/opalc++
-%{mpi_bindir}/opalcc
 %{mpi_bindir}/ortecc
 %{mpi_bindir}/shmemcc
 
@@ -584,8 +583,6 @@
 %{mpi_datadir}/openmpi/mpif77-wrapper-data.txt
 %{mpi_datadir}/openmpi/mpif90-wrapper-data.txt
 %{mpi_datadir}/openmpi/mpifort-wrapper-data.txt
-%{mpi_datadir}/openmpi/opalc++-wrapper-data.txt
-%{mpi_datadir}/openmpi/opalcc-wrapper-data.txt
 %{mpi_datadir}/openmpi/openmpi-valgrind.supp
 %{mpi_datadir}/openmpi/ortecc-wrapper-data.txt
 %{mpi_datadir}/openmpi/oshcc-wrapper-data.txt

++++++ openmpi2.spec ++++++
--- /var/tmp/diff_new_pack.I8MmaL/_old  2017-09-20 17:12:52.452007535 +0200
+++ /var/tmp/diff_new_pack.I8MmaL/_new  2017-09-20 17:12:52.452007535 +0200
@@ -52,7 +52,7 @@
 %endif
 %endif
 
-%define git_ver .176.7aa585d4ff
+%define git_ver .186.9a3ac9803c
 
 #############################################################################
 #
@@ -70,7 +70,6 @@
 Source0:        openmpi-%{version}%{git_ver}.tar.bz2
 Source1:        baselibs.conf
 Source2:        openmpi2-rpmlintrc
-Patch0:         openmpi-pmix-configure-ac.patch
 Provides:       mpi
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  Modules
@@ -243,7 +242,6 @@
 #############################################################################
 %prep
 %setup -q -n  openmpi-%{version}%{git_ver}
-%patch0
 
 #############################################################################
 #
@@ -273,10 +271,7 @@
            --with-ucx \
            --with-ucx-libdir=/usr/%_lib \
 %endif
-           --with-devel-headers \
               --with-package-string="Open MPI2 Distribution for SUSE" \
-              --enable-mpi-fortran=usempi \
-              --disable-mca-dso \
               --disable-silent-rules \
                   --disable-wrapper-rpath
 make %{?_smp_mflags}
@@ -392,6 +387,8 @@
 %endif # !openmpi2-testsuite
 
 %if "%{name}" == "openmpi2"
+%fdupes -s %{buildroot}%{mpi_mandir}
+%fdupes -s %{buildroot}%{mpi_datadir}
 
 #############################################################################
 #
@@ -553,16 +550,20 @@
 %defattr(-, root, root, -)
 %dir %{mpi_libdir}
 %mpi_libdir/*.so.*
+%{mpi_libdir}/openmpi/*.so
 
 %files devel
 %defattr(-, root, root, -)
 %dir %{mpi_libdir}/openmpi
 %dir %{mpi_libdir}/pkgconfig
 %{mpi_includedir}
-%{mpi_libdir}/openmpi/*.so
 %{mpi_libdir}/*.so
 %{mpi_libdir}/pkgconfig/*.pc
 %{mpi_libdir}/mpi.mod
+%if 0%{?suse_version} >= 1320
+%{mpi_libdir}/mpi_f08*.mod
+%{mpi_libdir}/pmpi_f08*.mod
+%endif
 %{mpi_bindir}/mpiCC
 %{mpi_bindir}/mpic++
 %{mpi_bindir}/mpicc
@@ -572,8 +573,6 @@
 %{mpi_bindir}/mpif90
 %{mpi_bindir}/mpifort
 %{mpi_bindir}/opal_wrapper
-%{mpi_bindir}/opalc++
-%{mpi_bindir}/opalcc
 %{mpi_bindir}/ortecc
 %{mpi_bindir}/shmemcc
 
@@ -584,8 +583,6 @@
 %{mpi_datadir}/openmpi/mpif77-wrapper-data.txt
 %{mpi_datadir}/openmpi/mpif90-wrapper-data.txt
 %{mpi_datadir}/openmpi/mpifort-wrapper-data.txt
-%{mpi_datadir}/openmpi/opalc++-wrapper-data.txt
-%{mpi_datadir}/openmpi/opalcc-wrapper-data.txt
 %{mpi_datadir}/openmpi/openmpi-valgrind.supp
 %{mpi_datadir}/openmpi/ortecc-wrapper-data.txt
 %{mpi_datadir}/openmpi/oshcc-wrapper-data.txt

++++++ _service ++++++
--- /var/tmp/diff_new_pack.I8MmaL/_old  2017-09-20 17:12:52.515998527 +0200
+++ /var/tmp/diff_new_pack.I8MmaL/_new  2017-09-20 17:12:52.515998527 +0200
@@ -8,7 +8,7 @@
     <param name="versionformat">@PARENT_TAG@.@TAG_OFFSET@.%h</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="versionrewrite-replacement">\1</param>
-    <param name="revision">7aa585d4ff260b69c7c90aceb7796c0aca7f1861</param>
+    <param name="revision">9a3ac9803cbd27d553457b3bb32450fedce1df15</param>
   </service>
   <service name="recompress" mode="disabled">
     <param name="file">openmpi*.tar</param>

++++++ openmpi-2.1.1.176.7aa585d4ff.tar.bz2 -> 
openmpi-2.1.1.186.9a3ac9803c.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openmpi-2.1.1.176.7aa585d4ff/NEWS 
new/openmpi-2.1.1.186.9a3ac9803c/NEWS
--- old/openmpi-2.1.1.176.7aa585d4ff/NEWS       2017-08-30 21:16:52.000000000 
+0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/NEWS       2017-09-12 16:57:41.000000000 
+0200
@@ -57,7 +57,6 @@
 ------------------------
 
 Bug fixes/minor improvements:
-
 - Update internal PMIx version to 1.2.3.
 - Fix some problems when using the NAG Fortran compiler to build Open MPI
   and when using the compiler wrappers.  Thanks to Neil Carlson for reporting.
@@ -94,6 +93,11 @@
 - Enable use of the head node of a SLURM allocation on Cray XC systems.
 - Fix a problem with synchronous sends when using the UCX PML.
 - Use default socket buffer size to improve TCP BTL performance.
+- Add a mca parameter ras_base_launch_orted_on_hn to allow for launching
+  MPI processes on the same node where mpirun is executing using a separate
+  orte daemon, rather than the mpirun process.   This may be useful to set to
+  true when using SLURM, as it improves interoperability with SLURM's signal
+  propagation tools.  By default it is set to false, except for Cray XC 
systems.
 - Remove support for big endian PowerPC.
 - Remove support for XL compilers older than v13.1
 - Remove IB XRC support from the OpenIB BTL due to loss of maintainer.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openmpi-2.1.1.176.7aa585d4ff/README 
new/openmpi-2.1.1.186.9a3ac9803c/README
--- old/openmpi-2.1.1.176.7aa585d4ff/README     2017-08-30 21:16:52.000000000 
+0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/README     2017-09-12 16:57:41.000000000 
+0200
@@ -144,6 +144,9 @@
   - Other 64 bit platforms (e.g., Linux on PPC64)
   - Oracle Solaris 10 and 11, 32 and 64 bit (SPARC, i386, x86_64),
     with Oracle Solaris Studio 12.5
+  - Problems have been reported when building Open MPI on FreeBSD 11.1
+    using the clang-4.0 system compiler. A workaround is to build
+    Open MPI using the GNU compiler.
 
 Compiler Notes
 --------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openmpi-2.1.1.176.7aa585d4ff/VERSION 
new/openmpi-2.1.1.186.9a3ac9803c/VERSION
--- old/openmpi-2.1.1.176.7aa585d4ff/VERSION    2017-08-30 21:16:52.000000000 
+0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/VERSION    2017-09-12 16:57:41.000000000 
+0200
@@ -26,7 +26,7 @@
 # requirement is that it must be entirely printable ASCII characters
 # and have no white space.
 
-greek=rc3
+greek=rc4
 
 # If repo_rev is empty, then the repository version number will be
 # obtained during "make dist" via the "git describe --tags --always"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openmpi-2.1.1.176.7aa585d4ff/opal/mca/pmix/pmix112/pmix/configure.ac 
new/openmpi-2.1.1.186.9a3ac9803c/opal/mca/pmix/pmix112/pmix/configure.ac
--- old/openmpi-2.1.1.176.7aa585d4ff/opal/mca/pmix/pmix112/pmix/configure.ac    
2017-08-30 21:16:52.000000000 +0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/opal/mca/pmix/pmix112/pmix/configure.ac    
2017-09-12 16:57:41.000000000 +0200
@@ -19,7 +19,7 @@
 # Copyright (c) 2012      Oracle and/or its affiliates.  All rights reserved.
 # Copyright (c) 2013      Mellanox Technologies, Inc.
 #                         All rights reserved.
-# Copyright (c) 2014-2015 Intel, Inc. All rights reserved
+# Copyright (c) 2014-2017 Intel, Inc. All rights reserved.
 # Copyright (c) 2016      IBM Corporation.  All rights reserved.
 # $COPYRIGHT$
 #
@@ -170,7 +170,6 @@
 ####################################################################
 
 CFLAGS_save="$CFLAGS"
-AC_PROG_CC
 CFLAGS="$CFLAGS_save"
 
 AC_ARG_VAR(CC_FOR_BUILD,[build system C compiler])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openmpi-2.1.1.176.7aa585d4ff/orte/mca/ras/base/base.h 
new/openmpi-2.1.1.186.9a3ac9803c/orte/mca/ras/base/base.h
--- old/openmpi-2.1.1.176.7aa585d4ff/orte/mca/ras/base/base.h   2017-08-30 
21:16:52.000000000 +0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/orte/mca/ras/base/base.h   2017-09-12 
16:57:41.000000000 +0200
@@ -49,6 +49,7 @@
     bool allocation_read;
     orte_ras_base_module_t *active_module;
     int total_slots_alloc;
+    bool launch_orted_on_hn;
 } orte_ras_base_t;
 
 ORTE_DECLSPEC extern orte_ras_base_t orte_ras_base;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openmpi-2.1.1.176.7aa585d4ff/orte/mca/ras/base/ras_base_frame.c 
new/openmpi-2.1.1.186.9a3ac9803c/orte/mca/ras/base/ras_base_frame.c
--- old/openmpi-2.1.1.176.7aa585d4ff/orte/mca/ras/base/ras_base_frame.c 
2017-08-30 21:16:52.000000000 +0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/orte/mca/ras/base/ras_base_frame.c 
2017-09-12 16:57:41.000000000 +0200
@@ -50,6 +50,36 @@
  */
 orte_ras_base_t orte_ras_base = {0};
 
+static int ras_register(mca_base_register_flag_t flags)
+{
+#if SLURM_CRAY_ENV
+    /*
+     * If we are in a Cray-SLURM environment, then we cannot
+     * launch procs local to the HNP. The problem
+     * is the MPI processes launched on the head node (where the
+     * ORTE_PROC_IS_HNP evalues to true) get launched by a daemon
+     * (mpirun) which is not a child of a slurmd daemon.  This
+     * means that any RDMA credentials obtained via the odls/alps
+     * local launcher are incorrect. Test for this condition. If
+     * found, then take steps to ensure we launch a daemon on
+     * the same node as mpirun and that it gets used to fork
+     * local procs instead of mpirun so they get the proper
+     * credential */
+
+    orte_ras_base.launch_orted_on_hn = true;
+#else
+    orte_ras_base.launch_orted_on_hn = false;
+#endif
+
+    mca_base_var_register("orte", "ras", "base", "launch_orted_on_hn",
+                          "Launch an orte daemon on the head node",
+                           MCA_BASE_VAR_TYPE_BOOL,
+                           NULL, 0, 0,
+                           OPAL_INFO_LVL_9,
+                           MCA_BASE_VAR_SCOPE_READONLY, 
&orte_ras_base.launch_orted_on_hn);
+    return ORTE_SUCCESS;
+}
+
 static int orte_ras_base_close(void)
 {
     /* Close selected component */
@@ -76,5 +106,5 @@
 }
 
 MCA_BASE_FRAMEWORK_DECLARE(orte, ras, "ORTE Resource Allocation Subsystem",
-                           NULL, orte_ras_base_open, orte_ras_base_close,
+                           ras_register, orte_ras_base_open, 
orte_ras_base_close,
                            mca_ras_base_static_components, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openmpi-2.1.1.176.7aa585d4ff/orte/mca/ras/base/ras_base_node.c 
new/openmpi-2.1.1.186.9a3ac9803c/orte/mca/ras/base/ras_base_node.c
--- old/openmpi-2.1.1.176.7aa585d4ff/orte/mca/ras/base/ras_base_node.c  
2017-08-30 21:16:52.000000000 +0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/orte/mca/ras/base/ras_base_node.c  
2017-09-12 16:57:41.000000000 +0200
@@ -9,7 +9,7 @@
  *                         University of Stuttgart.  All rights reserved.
  * Copyright (c) 2004-2005 The Regents of the University of California.
  *                         All rights reserved.
- * Copyright (c) 2011-2012 Los Alamos National Security, LLC.  All rights
+ * Copyright (c) 2011-2017 Los Alamos National Security, LLC.  All rights
  *                         reserved.
  * Copyright (c) 2014-2017 Intel, Inc. All rights reserved.
  * Copyright (c) 2015      Research Organization for Information Science
@@ -97,33 +97,24 @@
 
     /* get the hnp node's info */
     hnp_node = (orte_node_t*)opal_pointer_array_get_item(orte_node_pool, 0);
-#if SLURM_CRAY_ENV
-    /* if we are in a Cray-SLURM environment, then we cannot
-     * launch procs local to the HNP. The problem
-     * is the MPI processes launched on the head node (where the
-     * ORTE_PROC_IS_HNP evalues to true) get launched by a daemon
-     * (mpirun) which is not a child of a slurmd daemon.  This
-     * means that any RDMA credentials obtained via the odls/alps
-     * local launcher are incorrect. Test for this condition. If
-     * found, then take steps to ensure we launch a daemon on
-     * the same node as mpirun and that it gets used to fork
-     * local procs instead of mpirun so they get the proper
-     * credential */
-    if (NULL != hnp_node) {
-        OPAL_LIST_FOREACH(node, nodes, orte_node_t) {
-            if (orte_ifislocal(node->name)) {
-                orte_hnp_is_allocated = true;
-                break;
+
+    if ((orte_ras_base.launch_orted_on_hn == true) &&
+        (orte_managed_allocation)) {
+        if (NULL != hnp_node) {
+            OPAL_LIST_FOREACH(node, nodes, orte_node_t) {
+                if (orte_ifislocal(node->name)) {
+                    orte_hnp_is_allocated = true;
+                    break;
+                }
+            }
+            if (orte_hnp_is_allocated && 
!(ORTE_GET_MAPPING_DIRECTIVE(orte_rmaps_base.mapping) &
+                ORTE_MAPPING_NO_USE_LOCAL)) {
+                hnp_node->name = strdup("mpirun");
+                skiphnp = true;
+                ORTE_SET_MAPPING_DIRECTIVE(orte_rmaps_base.mapping, 
ORTE_MAPPING_NO_USE_LOCAL);
             }
-        }
-        if (orte_hnp_is_allocated && 
!(ORTE_GET_MAPPING_DIRECTIVE(orte_rmaps_base.mapping) & 
ORTE_MAPPING_NO_USE_LOCAL)) {
-            hnp_node->name = strdup("mpirun");
-            skiphnp = true;
-            ORTE_SET_MAPPING_DIRECTIVE(orte_rmaps_base.mapping, 
ORTE_MAPPING_NO_USE_LOCAL);
         }
     }
-#endif
-
 
     /* cycle through the list */
     while (NULL != (item = opal_list_remove_first(nodes))) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openmpi-2.1.1.176.7aa585d4ff/test/util/opal_path_nfs.c 
new/openmpi-2.1.1.186.9a3ac9803c/test/util/opal_path_nfs.c
--- old/openmpi-2.1.1.176.7aa585d4ff/test/util/opal_path_nfs.c  2017-08-30 
21:16:52.000000000 +0200
+++ new/openmpi-2.1.1.186.9a3ac9803c/test/util/opal_path_nfs.c  2017-09-12 
16:57:41.000000000 +0200
@@ -12,7 +12,7 @@
  *                         All rights reserved.
  * Copyright (c) 2010      Oak Ridge National Laboratory.
  *                         All rights reserved.
- * Copyright (c) 2010-2014 Cisco Systems, Inc.  All rights reserved.
+ * Copyright (c) 2010-2017 Cisco Systems, Inc.  All rights reserved
  * Copyright (c) 2010      IBM Corporation.  All rights reserved.
  * Copyright (c) 2014      Los Alamos National Security, LLC. All rights
  *                         reserved.
@@ -132,7 +132,6 @@
 
 void get_mounts (int * num_dirs, char ** dirs[], bool * nfs[])
 {
-#define MAX_DIR 256
 #define SIZE 1024
     char * cmd = "mount | cut -f3,5 -d' ' > opal_path_nfs.out";
     int rc;
@@ -150,13 +149,31 @@
         **dirs = NULL;
         *nfs = NULL;
     }
-    dirs_tmp = (char**) calloc (MAX_DIR, sizeof(char**));
-    nfs_tmp = (bool*) malloc (MAX_DIR * sizeof(bool));
 
+    /* First, count how many mount points there are.  Previous
+       versions of this test tried to have a (large) constant-sized
+       array for the mount points, but periodically it would break
+       because we would run this test on a system with a larger number
+       of mount points than the array.  So just count and make sure to
+       have an array large enough. */
     file = fopen("opal_path_nfs.out", "r");
+    int count = 0;
+    while (NULL != fgets (buffer, SIZE, file)) {
+        ++count;
+    }
+    printf("Found %d mounts\n", count);
+
+    // Add one more so we can have a NULL entry at the end
+    ++count;
+
+    dirs_tmp = (char**) calloc (count, sizeof(char*));
+    nfs_tmp = (bool*) calloc (count, sizeof(bool));
+
     i = 0;
     rc = 4711;
-    while (NULL != fgets (buffer, SIZE, file)) {
+    rewind(file);
+    // i should never be more than count, but be safe anyway.
+    while (i < count && NULL != fgets (buffer, SIZE, file)) {
         int mount_known;
         char fs[MAXNAMLEN];
 


Reply via email to