HTTP::T...aranoid(3)
π HTTP::Tiny::Paranoid π
okay bestie, so this is a Perl module from the User Contributed Perl Documentation section of the manual, and the name of the page itself is HTTP::T...aranoid(3) (the terminal truncates it, don't worry, it's just HTTP::Tiny::Paranoid). Anyway. Sit down. We're learning about a safer HTTP::Tiny and it's genuinely so iconic of it.
β¨ NAME β¨
HTTP::Tiny::Paranoid β a safer HTTP::Tiny π«Ά
Like, it's HTTP::Tiny but it looked both ways before crossing the street. Main character energy fr fr.
πΈ SYNOPSIS πΈ
# use just like HTTP::Tiny
use HTTP::Tiny::Paranoid;
my $response = HTTP::Tiny::Paranoid->new->get('http://example.com');
# block or whitelist specific hosts
# delegates to Net::DNS::Paranoid
HTTP::Tiny::Paranoid->blocked_hosts([...]);
HTTP::Tiny::Paranoid->whitelisted_hosts([...]);
not me dropping the most normal-looking Perl of all time π it literally works exactly like HTTP::Tiny, you just use the paranoid one instead and suddenly you have β¨boundariesβ¨
π¦ DESCRIPTION π¦
so here's the tea π β this module is a subclass of HTTP::Tiny that does exactly one additional function:
before connecting, it passes the hostname to Net::DNS::Paranoid. if the hostname is rejected, then the request is aborted before a connect is even attempted. π
like. it doesn't even try. it checks the vibes first, the connect never happens, and honestly? queen behavior. that's what we call a vibe check before the door opens. πͺβ
by default, Net::DNS::Paranoid rejects connections to private network ranges. lowkey important, highkey the whole point.
and the blocklist & whitelist? you can manipulate them using the blocked_hosts and whitelisted_hosts class methods. those are class methods, bestie, not object methods β call them on the class. iykyk. π
π SEE ALSO π
HTTP::TinyNet::DNS::ParanoidLWPx::ParanoidAgentLWP::UserAgent::Paranoid
the whole paranoid cinematic universe π go read them, they're all giving "i don't trust the internet and neither should you"
π«Ά SUPPORT π«Ά
π Bugs / Feature Requests
found a bug? got a feature request? please report it through the issue tracker at <https://github.com/robn/HTTP-Tiny-Paranoid/issues>. no cap, they want to hear from you. π
and the best part: you will be notified automatically of any progress on your issue. like a little notification fairy π§ keeping you posted. obsessed.
π¦ Source Code
this is open source software β¨ the code repository is available for public review and contribution under the terms of the license.
<https://github.com/robn/HTTP-Tiny-Paranoid>
and if you wanna clone it (you do), here's the exact line, copy it carefully bestie:
git clone https://github.com/robn/HTTP-Tiny-Paranoid.git
π AUTHORS π
- Robert Norris
<rob@eatenbyagrue.org>
one (1) legend. periodt.
π COPYRIGHT AND LICENSE π
this software is copyright (c) 2014 by Robert Norris.
this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
so yeah β free software, same terms as Perl 5, go wild, just don't go wild at a private IP address. HTTP::Tiny::Paranoid will absolutely catch you. π¨
and that's the whole page, babes. this doc ships with perl v5.42.0 and the version date on it is 2025-07-25 π mwah, slay, go be safe on the internet π β¨
π¦ where this page comes from
- fedora 43: perl-HTTP-Tiny-Paranoid 0.07-7.fc43 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms