---
name: "Net::IDN::Nameprep"
section: "3pm"
platform: "linux"
package: "libnet-idn-nameprep-perl"
version: "1.102+dfsg-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::IDN::Nameprep"
---

# Net::IDN::Nameprep(3pm)

A Stringprep Profile for Internationalized Domain Names (RFC 3491)

## NAME

Net::IDN::Nameprep - A Stringprep Profile for Internationalized Domain Names (RFC 3491)

## SYNOPSIS

```
  use Net::IDN::Nameprep;
  $output = nameprep $input;
```

## DESCRIPTION

This module implements the *nameprep* specification, which describes how to prepare internationalized domain name (IDN) labels in order to increase the likelihood that name input and name comparison work in ways that make sense for typical users throughout the world.  Nameprep is a profile of the stringprep protocol and is used as part of a suite of on-the-wire protocols for internationalizing the Domain Name System (DNS).

## FUNCTIONS

This module implements a single function, `"nameprep"`, which is exported by default.

- nameprep( $input \[, AllowUnassigned =\> 1 \] )

  Processes `$input` according to the *nameprep* specification and returns the result.

  If `$input` contains characters not allowed for *nameprep*, it throws an exception (so use `"eval"` if necessary).

  This function takes the following optional parameter:

  - AllowUnassigned

    (boolean) If set to a false value, unassigned code points in `$input` are not allowed.

    False MUST be used for *stored strings*.

    True MAY be used for *queries*.

    The default is true (backwards compatibility).

## AUTHOR

Claus Faerber \<CFAERBER@cpan.org\>

Previous versions written by Tatsuhiko Miyagawa \<miyagawa@bulknews.net\>

## LICENSE

Copyright 2007-2015 Claus Faerber.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

## SEE ALSO

Unicode::Stringprep, RFC 3491 (\<http://www.ietf.org/rfc/rfc3491.txt\>)
