libidnkit(3)

πŸ“¦ version 2.3, in nixos 26.05, nixpkgs unstable

πŸ’– NAME

libidnkit, libidnkitlite β€” internationalized domain name handling libraries. This is the libidnkit(3) page from the Library Functions Manual, bestie β€” yes, the whole iconic glow-up is right here. 🫢

✨ OVERVIEW ✨

Okay so libidnkit and libidnkitlite are the libraries that support all kinds of manipulations of internationalized domain names. πŸ’… They’re designed according to the IDNA framework, where every application has to encode internationalized domain names before passing them to the resolver. To help apps do that operation, the libraries give you an easy-to-use, high-level interface for the work. No cap.

Both libraries provide almost the exact same API. The difference? libidnkit internally uses iconv() to provide encoding conversion from UTF-8 to the local encoding β€” like iso-8859-1, usually determined by the current locale β€” and vice versa. libidnkitlite is the lightweight version of libidnkit: since it assumes the local encoding is UTF-8, it never uses iconv(). Slay.

The libraries provide the following functions:

  • idn_checkname() β€” validate an internationalized domain name.
  • idn_comparenames() β€” compare two internationalized domain names.
  • idn_comparenames2() β€” compare two internationalized domain names.
  • idn_decodename() β€” decode an internationalized domain name.
  • idn_decodename2() β€” decode an internationalized domain name.
  • idn_encodename() β€” encode an internationalized domain name.
  • idn_nameinit() β€” initialize the libidnkit or libidnkitelite library.
  • idn_result_tostring() β€” return a string corresponding with an error code.
  • idn_setlanguage() β€” set the current language.
  • idn_setlocalencoding() β€” set the local encoding.
  • idn_setlocalcheckfile() β€” set local check data by reading a file.
  • idn_version_getstring() β€” get a version string about idnkit.
  • idn_version_idnatable() β€” get a version string about idnkit.
  • idn_version_libidn() β€” get a version string about idnkit.
  • idn_version_unicode() β€” get a version string about idnkit.

πŸ‘‘ SEE ALSO πŸ‘‘

Go check out these next, bestie: idn_checkname(3), idn_comparenames(3), idn_decodename(3), idn_encodename(3), idn_nameinit(3), idn_result_tostring(3), idn_setlanguage(3), idn_setlocalencoding(3), idn_setlocalcheckfile(3), idn_version_getstring(3), idn_version_idnatable(3), idn_version_libidn(3), and idn_version_unicode(3). Periodt. πŸ’…


πŸ’– Cute sign-off time: this page is source/version libidnkit(3), dated Sep 21, 2012. Bye bestie, go encode something iconic! πŸŽ€

πŸ“¦ where this page comes from
  • nixos 26.05: idnkit 2.3
  • nixpkgs unstable: idnkit 2.3
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms