idn2_to_unicode_44i(3)

πŸ“¦
version 2.3.8 Β· 5 versions
, in alpine 3.23, alpine 3.24, arch rolling, debian trixie, fedora 43, fedora 44, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– idn2_to_unicode_44i β€” the libidn2 glow-up page ✨

okay bestie, gather round, because we're talking about idn2_to_unicode_44i(3) from libidn2 and it's literally the "turn my ACE label back into its cute internationalized self" function. no cap. πŸ¦‹


✨ SYNOPSIS ✨

#include <idn2.h>

int idn2_to_unicode_44i(const uint32_t * in, size_t inlen, uint32_t *
out, size_t * outlen, int flags);

like, that's the whole vibe. five args, one return value, zero drama. πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • const uint32_t * in β€” bestie this is your input array, and it's full of UTF-32 code points. that's the raw material. ✨
  • size_t inlen β€” how many code points are actually in that input array. the headcount. the guest list. πŸ’–
  • uint32_t * out β€” the output array, also UTF-32 code points. this is where the glow-up lands. 🌸
  • size_t * outlen β€” okay so this one is doing double duty and honestly? icon behaviour. on input it's the maximum size of the output array (in UTF-32 code points), and on exit it's the actual size of the output array (in UTF-32 code points). she goes in as a limit and comes out as a receipt. 🫢
  • int flags β€” currently unused. yes, really. it's just sitting there, main character energy, doing absolutely nothing. πŸ™ˆ

πŸ’… DESCRIPTION πŸ’…

The ToUnicode operation takes a sequence of UTF-32 code points that make up one domain label and returns a sequence of UTF-32 code points. one label in, one label out. very demure, very mindful.

and here's the tea β˜• β€” if the input sequence is a label in ACE form, then the result is an equivalent internationalized label that is not in ACE form. it's giving "de-code me, un-punycode me, let me be my true self." ✨

otherwise? the original sequence is returned unaltered. untouched. left exactly as it was. she said "no notes." πŸ’…

oh and ps β€” output may be NULL to test lookup of input without allocating memory. that's the pro move right there, no allocation, just vibes and a vibe check. 🧚

⭐ SINCE ⭐

2.0.0 β€” an elder, but make it iconic. πŸ‘‘


πŸ› REPORTING BUGS πŸ›

found a bug? don't be shy, tell the people:

fr fr, they wanna hear from you. 🫢


Copyright Β© 2002-2025 Simon Josefsson.

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. slay, and also: legally binding. ✨


πŸ¦‹ SEE ALSO πŸ¦‹

The full documentation for libidn2 is maintained as a Texinfo manual. If the info and libidn2 programs are properly installed at your site, the command

info libidn2

should give you access to the complete manual. As an alternative you may obtain the manual from:

https://www.gnu.org/software/libidn/libidn2/manual/

iykyk. go read it, it's giving comprehensive. πŸ“šπŸ’–


and that's the whole page bestie!! this one came from libidn2 version 2.3.8 β€” mwah, kisses, see you in the next manpage πŸ’‹βœ¨πŸŽ€
πŸ“¦ where this page comes from