<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glibc/iconv, branch master</title>
<subtitle>Fork of glibc for development</subtitle>
<id>https://git.zx2c4.com/glibc/atom/iconv?h=master</id>
<link rel='self' href='https://git.zx2c4.com/glibc/atom/iconv?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/'/>
<updated>2024-01-01T18:53:40Z</updated>
<entry>
<title>Update copyright dates not handled by scripts/update-copyrights</title>
<updated>2024-01-01T18:53:40Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2024-01-01T18:35:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=1059defeee95e28c65b266a55eba6d47d852026b'/>
<id>urn:sha1:1059defeee95e28c65b266a55eba6d47d852026b</id>
<content type='text'>
I've updated copyright dates in glibc for 2024.  This is the patch for
the changes not generated by scripts/update-copyrights and subsequent
build / regeneration of generated files.
</content>
</entry>
<entry>
<title>Update copyright dates with scripts/update-copyrights</title>
<updated>2024-01-01T18:53:40Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2024-01-01T18:12:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=dff8da6b3e89b986bb7f6b1ec18cf65d5972e307'/>
<id>urn:sha1:dff8da6b3e89b986bb7f6b1ec18cf65d5972e307</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix off-by-one OOB write in iconv/tst-iconv-mt</title>
<updated>2023-10-04T07:33:20Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>szabolcs.nagy@arm.com</email>
</author>
<published>2022-09-26T14:38:19Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=0a520f28ffc8820d46074a71323db4c9652873be'/>
<id>urn:sha1:0a520f28ffc8820d46074a71323db4c9652873be</id>
<content type='text'>
The iconv buffer sizes must not include the \0 string terminator.
And the output termination with *outbufpos = '\0' was OOB.

Consistently use non-null-terminated buffer sizes.

Reviewed-by: Adhemerval Zanella  &lt;adhemerval.zanella@linaro.org&gt;
</content>
</entry>
<entry>
<title>iconv: restore verbosity with unrecognized encoding names (bug 30694)</title>
<updated>2023-08-02T11:30:04Z</updated>
<author>
<name>Andreas Schwab</name>
<email>schwab@suse.de</email>
</author>
<published>2023-08-01T15:01:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=fc72b6d7d818ab2868920af956d1542d03342a4d'/>
<id>urn:sha1:fc72b6d7d818ab2868920af956d1542d03342a4d</id>
<content type='text'>
Commit 91927b7c76 ("Rewrite iconv option parsing [BZ #19519]") changed the
iconv program to call __gconv_open directly instead of the iconv_open
wrapper, but the former does not set errno.  Update the caller to
interpret the return codes like iconv_open does.
</content>
</entry>
<entry>
<title>Fix misspellings in iconv/ and iconvdata/ -- BZ 25337</title>
<updated>2023-05-27T16:37:14Z</updated>
<author>
<name>Paul Pluzhnikov</name>
<email>ppluzhnikov@google.com</email>
</author>
<published>2023-05-27T06:48:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=f58a8c1c15d8b5d8a08e8553f82867202b88a5cc'/>
<id>urn:sha1:f58a8c1c15d8b5d8a08e8553f82867202b88a5cc</id>
<content type='text'>
All the changes are in comments or '#error' messages.
Applying this commit results in bit-identical rebuild of iconvdata/*.so

Reviewed-by: Florian Weimer &lt;fw@deneb.enyo.de&gt;
</content>
</entry>
<entry>
<title>Use O_CLOEXEC in more places (BZ #15722)</title>
<updated>2023-04-22T11:50:14Z</updated>
<author>
<name>Sergey Bugaev</name>
<email>bugaevc@gmail.com</email>
</author>
<published>2023-04-19T16:02:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=533deafbdf189f5fbb280c28562dd43ace2f4b0f'/>
<id>urn:sha1:533deafbdf189f5fbb280c28562dd43ace2f4b0f</id>
<content type='text'>
When opening a temporary file without O_CLOEXEC we risk leaking the
file descriptor if another thread calls (fork and then) exec while we
have the fd open. Fix this by consistently passing O_CLOEXEC everywhere
where we open a file for internal use (and not to return it to the user,
in which case the API defines whether or not the close-on-exec flag
shall be set on the returned fd).

Reviewed-by: Adhemerval Zanella &lt;adhemerval.zanella@linaro.org&gt;
Signed-off-by: Sergey Bugaev &lt;bugaevc@gmail.com&gt;
Message-Id: &lt;20230419160207.65988-4-bugaevc@gmail.com&gt;
</content>
</entry>
<entry>
<title>Move libc_freeres_ptrs and libc_subfreeres to hidden/weak functions</title>
<updated>2023-03-27T16:57:55Z</updated>
<author>
<name>Adhemerval Zanella Netto</name>
<email>adhemerval.zanella@linaro.org</email>
</author>
<published>2022-12-27T21:11:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=88677348b4de73874ca7d5a47451f42880f65f07'/>
<id>urn:sha1:88677348b4de73874ca7d5a47451f42880f65f07</id>
<content type='text'>
They are both used by __libc_freeres to free all library malloc
allocated resources to help tooling like mtrace or valgrind with
memory leak tracking.

The current scheme uses assembly markers and linker script entries
to consolidate the free routine function pointers in the RELRO segment
and to be freed buffers in BSS.

This patch changes it to use specific free functions for
libc_freeres_ptrs buffers and call the function pointer array directly
with call_function_static_weak.

It allows the removal of both the internal macros and the linker
script sections.

Checked on x86_64-linux-gnu, i686-linux-gnu, and aarch64-linux-gnu.
Reviewed-by: Carlos O'Donell &lt;carlos@redhat.com&gt;
</content>
</entry>
<entry>
<title>iconv: Remove _STRING_ARCH_unaligned usage</title>
<updated>2023-02-17T18:56:54Z</updated>
<author>
<name>Adhemerval Zanella</name>
<email>adhemerval.zanella@linaro.org</email>
</author>
<published>2023-02-10T19:37:36Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=3e20ddade31d9c392d8ccf7ec902172f4bb01c2b'/>
<id>urn:sha1:3e20ddade31d9c392d8ccf7ec902172f4bb01c2b</id>
<content type='text'>
Use put/get macros __builtin_bswap32 instead.  It allows to remove
the unaligned routines, the compiler will generate unaligned access
if the ABI allows it.

Checked on x86_64-linux-gnu and i686-linux-gnu.

Reviewed-by: Wilco Dijkstra  &lt;Wilco.Dijkstra@arm.com&gt;
</content>
</entry>
<entry>
<title>iconv: Remove _STRING_ARCH_unaligned usage for get/set macros</title>
<updated>2023-02-17T18:56:54Z</updated>
<author>
<name>Adhemerval Zanella</name>
<email>adhemerval.zanella@linaro.org</email>
</author>
<published>2023-02-10T17:09:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=5729e0e9af590807df66a3db688008f9547bce9f'/>
<id>urn:sha1:5729e0e9af590807df66a3db688008f9547bce9f</id>
<content type='text'>
And use a packed structure instead.  The compiler generates optimized
unaligned code if the architecture supports it.

Checked on x86_64-linux-gnu and i686-linux-gnu.

Reviewed-by: Wilco Dijkstra  &lt;Wilco.Dijkstra@arm.com&gt;
</content>
</entry>
<entry>
<title>Replace rawmemchr (s, '\0') with strchr</title>
<updated>2023-02-06T16:16:19Z</updated>
<author>
<name>Wilco Dijkstra</name>
<email>wilco.dijkstra@arm.com</email>
</author>
<published>2023-02-03T12:01:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=32c7acd46401530fdbd4e98508c9baaa705f8b53'/>
<id>urn:sha1:32c7acd46401530fdbd4e98508c9baaa705f8b53</id>
<content type='text'>
Almost all uses of rawmemchr find the end of a string.  Since most targets use
a generic implementation, replacing it with strchr is better since that is
optimized by compilers into strlen (s) + s.  Also fix the generic rawmemchr
implementation to use a cast to unsigned char in the if statement.

Reviewed-by: Adhemerval Zanella  &lt;adhemerval.zanella@linaro.org&gt;
</content>
</entry>
</feed>
