Finger(3pm)

πŸ“¦
version 1.06 Β· 3 versions
, in debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Finger(3pm) β€” aka Net::Finger πŸ’–

okay bestie, welcome to the cutest little Perl module you're ever gonna meet. it's called Net::Finger and it's genuinely so simple that the original author basically said "why am I even writing docs". we're writing them anyway. we're doing it with flair. periodt. ✨


πŸŽ€ NAME πŸŽ€

Net::Finger β€” a Perl implementation of a finger client. yes. that's the whole thing. it fingers. it's a finger client. in Perl. iconic behavior honestly. πŸ’…


🌸 SYNOPSIS 🌸

use Net::Finger;

# You can put the response in a scalar...
$response = finger('corbeau@execpc.com');
unless ($response) {
    warn "Finger problem: $Net::Finger::error";
}

# ...or an array.
@lines = finger('corbeau@execpc.com', 1);

like. look at it. that's the whole vibe. πŸ¦‹


✨ DESCRIPTION ✨

Net::Finger is a simple, straightforward implementation of a finger client in Perl β€” so simple, fr, that writing this documentation is almost unnecessary. (we're doing it anyway because we love you and because vibes.)

This module has one automatically exported function, appropriately entitled finger(). she takes two arguments:

  • A username or email address to finger. (yes, it really does support the vaguely deprecated user@host@host syntax β€” she's got range, ok?) and if you need a port that isn't the default finger port, which is 79, you can specify it like so: username@hostname:port.
  • (Optional) a boolean value for verbosity. True == verbose output. if you don't give it a value, it defaults to false. ngl though, whether this output will differ from the non-verbose version at all is up to the finger server. so. your mileage may vary bestie. πŸ™ˆ

finger() is context-sensitive, which is very main character of her:

  • used in a scalar context, she returns the server's response as one large string.
  • used in an array context, she returns the response as a list, line by line.

If an error of some sort occurs, she returns undef and puts a string describing the error into the package global variable $Net::Finger::error. 🚨

And if you'd like to see some excessively verbose output describing every single step finger() takes while talking to the other server, just put a true value in the variable $Net::Finger::debug. it's giving commentary track. it's giving director's cut. we love that for us.


🌈 here's a sample program 🌈

a very tiny, stripped-down finger(1), if you will. she's small. she's efficient. she ate.

#!/usr/bin/perl -w

use Net::Finger;
use Getopt::Std;
use vars qw($opt_l);

getopts('l');
$x = finger($ARGV[0], $opt_l);

if ($x) {
    print $x;
} else {
    warn "$0: error: $Net::Finger::error\n";
}

πŸ’€ BUGS πŸ’€

okay so. the flaws. we list them with love. 🫢

  • Doesn't yet do non-blocking requests. (FITNR. Really.) β€” bestie is patient, not asynchronous, and she said what she said.
  • Doesn't do local requests unless there's a finger server running on localhost. no server, no party. 😭
  • Contrary to the name's implications, this module involves no teledildonics. πŸ’€πŸ’€πŸ’€ i am NOT elaborating. the manpage said it, not me.

πŸ‘‘ AUTHOR πŸ‘‘

Dennis Taylor, <corbeau@execpc.com> β€” the legend, the blueprint, the moment. bow. πŸŽ€


🧚 SEE ALSO 🧚

iykyk. go read them. you'll be obsessed. ⭐


and that's the whole page, bestie!! πŸ’–βœ¨πŸŒΈ this was perl v5.36.0, dated 2023-05-17, and it lives in the Finger(3pm) manual β€” mwah, love you, go finger someone (responsibly) πŸ¦‹πŸ’…

πŸ“¦ where this page comes from