docs::a...R::Util(3)
πΈ NAME πΈ
APR::Util β Perl API for Various APR Utilities. Okay so this is the docs::a...R::Util(3) manual page, bestie, filed under User Contributed Perl Documentation π
β¨ Synopsis β¨
use APR::Util ();
$ok = password_validate($passwd, $hash);
π Description π
Various APR utilities that don't fit into any other group. That's literally the whole vibe β¨
π API π
APR::Util provides the following functions and/or methods β periodt π
π "password_validate"
Validate an encrypted password hash against a plain text password (with lots of restrictions and peculiarities). The way this one has so many caveats is giving main character energy π
$ok = password_validate($passwd, $hash);
- arg1:
$passwd( string ) β plain text password string - arg2:
$hash( string ) β encrypted or encoded hash. See below for supported hash formats. - ret:
$ok( boolean ) β the password either matches or not. - since:
2.0.00
The function handles the output of the following functions (it knows to tell md5 and sha1 from the others, since they have a special pattern recognized by apr):
- md5 β generated by
apr_md5_encode()(for which at the moment we have no perl glue, ask if you need it). - sha1 β generated by
apr_sha1_base64()(for which at the moment we have no perl glue, ask if you need it). And it's available only since Apache2.0.50β noted, bestie. - crypt β on all but the following platforms:
MSWin32,beosandNetWare. Therefore you probably don't want to use that feature, unless you know that your code will never end up running on those listed platforms. lowkey risky π«£- Moreover, on these three platforms, if that function sees that the hash is not of md5 and sha1 formats, it'll do a clear to clear text matching, always returning success, no matter what the hashed value is.
Warning: double check that you understand what this function does and does not before using it. fr fr, do not skip this vibe check π«Ά
π Unsupported API π
APR::Socket also provides auto-generated Perl interface for a few other methods which aren't tested at the moment and therefore their API is a subject to change. These methods will be finalized later as a need arises. If you want to rely on any of the following methods please contact the mod_perl development mailing list so we can help each other take the steps necessary to shift the method to an officially supported API.
π¦ "filepath_name_get"
META: Autogenerated - needs to be reviewed/completed
[We haveFile::SpecandFile::Basenamefor this purpose, I can't see why this api is needed]
return the final element of the pathname
$ret = filepath_name_get($pathname);
- arg1:
$pathname( string ) β the path to get the final element of - ret:
$ret( string ) β the final element of the path
For example:
"/foo/bar/gum" => "gum"
"/foo/bar/gum/" => ""
"gum" => "gum"
"bs\\path\\stuff" => "stuff"
- since: subject to change
π "password_get"
META: Autogenerated - needs to be reviewed/completed
Display a prompt and read in the password from stdin.
$ret = password_get($prompt, $pwbuf, $bufsize);
- arg1:
$prompt( string ) β the prompt to display - arg2:
$pwbuf( string ) β buffer to store the password - arg3:
$bufsize(number) β the length of the password buffer. - ret:
$ret(integer) - since: subject to change
β See Also β
mod_perl 2.0 documentation.
π Copyright π
mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.
π«Ά Authors π«Ά
The mod_perl development team and numerous contributors.
okay that's the whole page, bestie π source/version is perl v5.42.3, dated 2023-10-21, from docs::a...R::Util(3). bye and slay β¨π
π¦ where this page comes from
- nixos 26.05: mod_perl 2.0.13
- nixpkgs unstable: mod_perl 2.0.13
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms