diff --git a/.gitignore b/.gitignore
index fd24cc6..c3963b0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/nspr-4.32.tar.gz
+SOURCES/nspr-4.34.tar.gz
diff --git a/.nspr.metadata b/.nspr.metadata
index f10a911..3d1d43d 100644
--- a/.nspr.metadata
+++ b/.nspr.metadata
@@ -1 +1 @@
-28e05ef5cbe6e7cde239d3cdcccabf571ec73f69 SOURCES/nspr-4.32.tar.gz
+efea1385dc83c55018183257036206b5f2c77c59 SOURCES/nspr-4.34.tar.gz
diff --git a/SOURCES/nspr-4.34-fix-coverity-loop-issue.patch b/SOURCES/nspr-4.34-fix-coverity-loop-issue.patch
new file mode 100644
index 0000000..c8c4149
--- /dev/null
+++ b/SOURCES/nspr-4.34-fix-coverity-loop-issue.patch
@@ -0,0 +1,51 @@
+diff --git a/pr/src/misc/prnetdb.c b/pr/src/misc/prnetdb.c
+--- a/pr/src/misc/prnetdb.c
++++ b/pr/src/misc/prnetdb.c
+@@ -2209,28 +2209,38 @@ PR_GetPrefLoopbackAddrInfo(PRNetAddr *re
+         PRBool result_still_empty = PR_TRUE;
+         PRADDRINFO *ai = res;
+         do {
+             PRNetAddr aNetAddr;
+ 
+             while (ai && ai->ai_addrlen > sizeof(PRNetAddr))
+                 ai = ai->ai_next;
+ 
+-            if (ai) {
+-                /* copy sockaddr to PRNetAddr */
+-                memcpy(&aNetAddr, ai->ai_addr, ai->ai_addrlen);
+-                aNetAddr.raw.family = ai->ai_addr->sa_family;
++            if (!ai) {
++                break;
++            }
++
++            /* copy sockaddr to PRNetAddr */
++            memcpy(&aNetAddr, ai->ai_addr, ai->ai_addrlen);
++            aNetAddr.raw.family = ai->ai_addr->sa_family;
+ #ifdef _PR_INET6
+-                if (AF_INET6 == aNetAddr.raw.family)
+-                    aNetAddr.raw.family = PR_AF_INET6;
++            if (AF_INET6 == aNetAddr.raw.family)
++                aNetAddr.raw.family = PR_AF_INET6;
+ #endif
+-                if (ai->ai_addrlen < sizeof(PRNetAddr))
+-                    memset(((char*)result)+ai->ai_addrlen, 0,
+-                           sizeof(PRNetAddr) - ai->ai_addrlen);
++            if (ai->ai_addrlen < sizeof(PRNetAddr))
++                memset(((char*)&aNetAddr)+ai->ai_addrlen, 0,
++                       sizeof(PRNetAddr) - ai->ai_addrlen);
++
++            if (result->raw.family == PR_AF_INET) {
++                aNetAddr.inet.port = htons(port);
+             }
++            else {
++                aNetAddr.ipv6.port = htons(port);
++            }
++
+ 
+             /* If we obtain more than one result, prefer IPv6. */
+             if (result_still_empty || aNetAddr.raw.family == PR_AF_INET6) {
+                 memcpy(result, &aNetAddr, sizeof(PRNetAddr));
+             }
+             result_still_empty = PR_FALSE;
+             ai = ai->ai_next;
+         }
diff --git a/SOURCES/nspr-4.34-server-passive.patch b/SOURCES/nspr-4.34-server-passive.patch
new file mode 100644
index 0000000..ed8d713
--- /dev/null
+++ b/SOURCES/nspr-4.34-server-passive.patch
@@ -0,0 +1,12 @@
+diff -r c75b4e36b7e8 pr/src/misc/prnetdb.c
+--- a/pr/src/misc/prnetdb.c     Wed May 25 23:39:48 2022 +0200
++++ b/pr/src/misc/prnetdb.c     Tue Jun 14 18:48:03 2022 -0400
+@@ -2204,6 +2204,7 @@
+ 
+     memset(&hints, 0, sizeof(hints));
+ 
++    hints.ai_flags = AI_PASSIVE;
+     rv = GETADDRINFO(NULL, tmpBuf, &hints, &res);
+     if (rv == 0) {
+         PRBool result_still_empty = PR_TRUE;
+
diff --git a/SPECS/nspr.spec b/SPECS/nspr.spec
index f3e731e..caf5eb9 100644
--- a/SPECS/nspr.spec
+++ b/SPECS/nspr.spec
@@ -1,4 +1,4 @@
-%global nspr_version 4.32.0
+%global nspr_version 4.34.0
 
 # The upstream omits the trailing ".0", while we need it for
 # consistency with the pkg-config version:
@@ -11,7 +11,7 @@ rpm.define(string.format("nspr_archive_version %s",
 Summary:        Netscape Portable Runtime
 Name:           nspr
 Version:        %{nspr_version}
-Release:        1%{?dist}
+Release:        3%{?dist}
 License:        MPLv2.0
 URL:            http://ftp.mozilla.org/pub/nspr/releases/v${nspr_archive_version}/src
 Group:          System Environment/Libraries
@@ -27,6 +27,9 @@ Source1:        nspr-config.xml
 Patch1:         nspr-config-pc.patch
 Patch2:         nspr-gcc-atomics.patch
 
+Patch10:         nspr-4.34-fix-coverity-loop-issue.patch
+Patch11:         nspr-4.34-server-passive.patch
+
 %description
 NSPR provides platform independence for non-GUI operating system 
 facilities. These facilities include threads, thread synchronization, 
@@ -59,6 +62,8 @@ cp ./nspr/config/nspr-config.in ./nspr/config/nspr-config-pc.in
 %patch1 -p0 -b .flags
 pushd nspr
 %patch2 -p1 -b .gcc-atomics
+%patch10 -p1 -b .coverity
+%patch11 -p1 -b .passive
 popd
 
 %build
@@ -152,6 +157,15 @@ done
 %{_mandir}/man*/*
 
 %changelog
+* Wed Jun 15 2022 Bob Relyea <rrelyea@redhat.com> - 4.34.0-3
+- Coverity fix changed selfserv from passive to active, change it back
+
+* Mon Jun 6 2022 Bob Relyea <rrelyea@redhat.com> - 4.34.0-2
+- Fix coverify issue in NSPR 4.34
+
+* Thu Jun 2 2022 Bob Relyea <rrelyea@redhat.com> - 4.34.0-1
+- Update to NSPR 4.34
+
 * Thu Jun 17 2021 Bob Relyea <rrelyea@redhat.com> - 4.32.0-1
 - Update to NSPR 4.32