<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glibc/include/rpc, branch master</title>
<subtitle>Fork of glibc for development</subtitle>
<id>https://git.zx2c4.com/glibc/atom/include/rpc?h=master</id>
<link rel='self' href='https://git.zx2c4.com/glibc/atom/include/rpc?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/'/>
<updated>2020-12-10T10:11:20Z</updated>
<entry>
<title>Handle out-of-memory case in svc_tcp.c/svc_unix.c:rendezvous_request.</title>
<updated>2020-12-10T10:11:20Z</updated>
<author>
<name>Stefan Liebler</name>
<email>stli@linux.ibm.com</email>
</author>
<published>2020-12-04T16:00:27Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=4b2e40a9259fab08161e1c607b06a41e15d543dc'/>
<id>urn:sha1:4b2e40a9259fab08161e1c607b06a41e15d543dc</id>
<content type='text'>
If glibc is build with -O3 on at least 390 (-m31) or x86 (-m32),
gcc 11 dumps this warning:
svc_tcp.c: In function 'rendezvous_request':
svc_tcp.c:274:3: error: 'memcpy' offset [0, 15] is out of the bounds [0, 0] [-Werror=array-bounds]
  274 |   memcpy (&amp;xprt-&gt;xp_raddr, &amp;addr, sizeof (addr));
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

In out-of-memory case, if one of the mallocs in makefd_xprt function
returns NULL, a message is dumped, makefd_xprt returns NULL
and the subsequent memcpy would copy to NULL.

Instead of a segfaulting, we delay a bit (see also __svc_accept_failed
and Bug 14889 (CVE-2011-4609) - svc_run() produces high cpu usage when
accept() fails with EMFILE (CVE-2011-4609).

The same applies to svc_unix.c.
Reviewed-by: Adhemerval Zanella  &lt;adhemerval.zanella@linaro.org&gt;
</content>
</entry>
<entry>
<title>nss_files: Consolidate line parse declarations in &lt;nss_files.h&gt;</title>
<updated>2020-07-21T05:33:20Z</updated>
<author>
<name>Florian Weimer</name>
<email>fweimer@redhat.com</email>
</author>
<published>2020-07-16T14:40:44Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=e9b2340998ab22402a8e968ba674c380a625b9dc'/>
<id>urn:sha1:e9b2340998ab22402a8e968ba674c380a625b9dc</id>
<content type='text'>
These functions should eventually have the same type, so it makes
sense to declare them together.

Tested-by: Carlos O'Donell &lt;carlos@redhat.com&gt;
Reviewed-by: Carlos O'Donell &lt;carlos@redhat.com&gt;
</content>
</entry>
<entry>
<title>Move &lt;rpc/netdb.h&gt; from sunrpc to inet</title>
<updated>2020-07-17T13:19:35Z</updated>
<author>
<name>Florian Weimer</name>
<email>fweimer@redhat.com</email>
</author>
<published>2020-07-17T13:19:35Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=76b8442db51a8976de19934638a42532a3af607f'/>
<id>urn:sha1:76b8442db51a8976de19934638a42532a3af607f</id>
<content type='text'>
Restore &lt;rpc/netdb.h&gt; as an installed header. Delete the dummy header
resolv/rpc/netdb.h because inet is not an optional glibc component
(so its &lt;rpc/netdb.h&gt; is always available).

Fixes commit acb527929d0c2b3bb0798472c42ddb3203729708 ("Move
non-deprecated RPC-related functions from sunrpc to inet") in
combination with commit 5500cdba4018ddbda7909bc7f4f9718610b43cf0
("Remove --enable-obsolete-rpc configure flag").
</content>
</entry>
<entry>
<title>Remove --enable-obsolete-nsl configure flag</title>
<updated>2020-07-08T15:25:57Z</updated>
<author>
<name>Petr Vorel</name>
<email>pvorel@suse.cz</email>
</author>
<published>2020-07-08T11:06:55Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=ae7a94e5e3edf78f4da562edc05ece229614c716'/>
<id>urn:sha1:ae7a94e5e3edf78f4da562edc05ece229614c716</id>
<content type='text'>
this means that *always* libnsl is only built as shared library for
backward compatibility and the NSS modules libnss_nis and libnss_nisplus
are not built at all, libnsl's headers aren't installed.

This compatibility is kept only for architectures and ABIs that have
been added in or before version 2.28.

Replacement implementations based on TIRPC, which additionally support
IPv6, are available from &lt;https://github.com/thkukuk/&gt;.

This change does not affect libnss_compat which does not depended
on libnsl since 2.27 and thus can be used without NIS.

libnsl code depends on Sun RPC, e.g. on --enable-obsolete-rpc (installed
libnsl headers use installed Sun RPC headers), which will be removed in
the following commit.
</content>
</entry>
<entry>
<title>sunrpc: Remove hidden aliases for global data symbols (bug 26210)</title>
<updated>2020-07-08T06:39:39Z</updated>
<author>
<name>Florian Weimer</name>
<email>fweimer@redhat.com</email>
</author>
<published>2020-07-08T05:58:51Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=78e02c469828fcfb6a5cf73dbcceb4f60fb6fafd'/>
<id>urn:sha1:78e02c469828fcfb6a5cf73dbcceb4f60fb6fafd</id>
<content type='text'>
It is generally not possible to add hidden aliases for global data
symbols: If the main executable contains a copy relocation against
the symbol, the hidden aliases keep pointing to the glibc-internal
copy of the symbol, instead of the symbol actually used by the
application.

Fixes commit 89aacb513eb77549a29df2638913a0f8178cf3f5 ("sunrpc:
Remove stray exports without --enable-obsolete-rpc [BZ #23166]").

Reviewed-by: Carlos O'Donell &lt;carlos@redhat.com&gt;
</content>
</entry>
<entry>
<title>Run thread shutdown functions in an explicit order</title>
<updated>2018-06-26T13:27:12Z</updated>
<author>
<name>Florian Weimer</name>
<email>fweimer@redhat.com</email>
</author>
<published>2018-06-26T13:13:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=124e025864bb39732c71fc60c1443d5680881a0a'/>
<id>urn:sha1:124e025864bb39732c71fc60c1443d5680881a0a</id>
<content type='text'>
This removes the __libc_thread_subfreeres hook in favor of explict
calls.

Reviewed-by: Carlos O'Donell &lt;carlos@redhat.com&gt;
</content>
</entry>
<entry>
<title>sunrpc: Remove always-defined _RPC_THREAD_SAFE_ macro</title>
<updated>2018-06-26T13:27:03Z</updated>
<author>
<name>Florian Weimer</name>
<email>fweimer@redhat.com</email>
</author>
<published>2018-06-26T13:27:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=935d920e763626dbcbbf655117285d1d270791a1'/>
<id>urn:sha1:935d920e763626dbcbbf655117285d1d270791a1</id>
<content type='text'>
Header and C source file changes were generated using:

unifdef -m -D_RPC_THREAD_SAFE_ include/rpc/rpc.h sunrpc/*.c
</content>
</entry>
<entry>
<title>sunrpc: Remove stray exports without --enable-obsolete-rpc [BZ #23166]</title>
<updated>2018-05-11T13:36:50Z</updated>
<author>
<name>Florian Weimer</name>
<email>fweimer@redhat.com</email>
</author>
<published>2018-05-11T13:36:50Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=89aacb513eb77549a29df2638913a0f8178cf3f5'/>
<id>urn:sha1:89aacb513eb77549a29df2638913a0f8178cf3f5</id>
<content type='text'>
This is needed to avoid a warning when linking against libtirpc:

/lib64/libc.so.6: warning: common of `rpc_createerr@@TIRPC_0.3.0' overridden by definition
/usr/lib64/libtirpc.so: warning: defined here

This ld warning is not enabled by default; -Wl,--warn-common enables it.

Reviewed-by: Carlos O'Donell &lt;carlos@redhat.com&gt;
</content>
</entry>
<entry>
<title>Mark internal rpc functions with attribute_hidden [BZ #18822]</title>
<updated>2017-10-01T22:55:15Z</updated>
<author>
<name>H.J. Lu</name>
<email>hjl.tools@gmail.com</email>
</author>
<published>2017-10-01T22:54:51Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=d48354d86087ba63acb7e2b20fb604c0b6ba4352'/>
<id>urn:sha1:d48354d86087ba63acb7e2b20fb604c0b6ba4352</id>
<content type='text'>
Mark internal rpc functions with attribute_hidden to allow direct
access within libc.so and libc.a without using GOT nor PLT.

	[BZ #18822]
	* include/rpc/rpc.h (__rpc_thread_variables): Add
	attribute_hidden.
	(__rpc_thread_svc_cleanup): Likewise.
	(__rpc_thread_clnt_cleanup): Likewise.
	(__rpc_thread_key_cleanup): Likewise.
</content>
</entry>
<entry>
<title>Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822]</title>
<updated>2017-10-01T22:21:00Z</updated>
<author>
<name>H.J. Lu</name>
<email>hjl.tools@gmail.com</email>
</author>
<published>2017-10-01T22:20:47Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=9635ce69626bfe41196bdef8efe4aba8d8a7b58f'/>
<id>urn:sha1:9635ce69626bfe41196bdef8efe4aba8d8a7b58f</id>
<content type='text'>
Mark internal getXXXbyYYY functions with attribute_hidden to allow direct
access within libc.so and libc.a without using GOT nor PLT.

	[BZ #18822]
	* include/aliases.h (__getaliasbyname_r): Add attribute_hidden.
	* include/netdb.h (__gethostbyaddr_r): Likewise.
	(__gethostbyname_r): Likewise.
	(__gethostbyname2_r): Likewise.
	(__getnetbyaddr_r): Likewise.
	(__getnetbyname_r): Likewise.
	(__getservbyname_r): Likewise.
	(__getservbyport_r): Likewise.
	(__getprotobyname_r): Likewise.
	(__getprotobynumber_r): Likewise.
	(__getnetgrent_r): Likewise.
	* include/rpc/netdb.h (__getrpcbyname_r): Likewise.
	(__getrpcbynumber_r): Likewise.
	* nss/getXXbyYY.c (INTERNAL (REENTRANT_NAME)): Likewise.
</content>
</entry>
</feed>
