mathstodon.xyz is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance for maths people. We have LaTeX rendering in the web interface!

Server stats:

2.8K
active users

#icq

0 posts0 participants0 posts today

I was reading a story today about #theoldnet and how if you leave an “&” symbol at the end of an #email , it means you want the recipient to reply back. Does anyone remember this or still do this today? I don’t recall that being a thing or maybe it was and I didn’t notice. Gonna tag below with adjacent words in hopes of response.

#aol #bbs #vintagecomputing #retro #retrotech @ActionRetro #dialup #486 #windows95 #prodigy #netscape #icq #compuserve #angelfire #geocities #irc

Replied in thread

@compl4xx @Layer8 @nick @kuketzblog @marcel @mspro

  • EXAKT DAS!

Meine Rede...

Oder um es einfach zu erklären: Warum gibt es #HTTP(S) & #HTML sowie #eMail ( #IMAP & #SMTP) bis heute und keiner nutzt mehr #AOL, #MSN, #ICQ?

Wenn @signalapp / #Signal wegen #CloudAct geflipped wird wie #EncroChat, #ANØM & #SkyECC dann stehen Leute alternativlos in der shice ubd die ganzen "Sicherheitsversprechen" lösen sich in "#TrustMeBro!" und #Lügen auf.

Ich nutze meinen XMPP-Account seit Ewigkeiten und habe drölfzig Clients durch. Aber Kontakte erreichen mich darüber Problemlos!

Infosec.SpaceKevin Karhan :verified: (@kkarhan@infosec.space)@kuketzblog@social.tchncs.de naja, @signalapp@mastodon.world fällt auch unter #CloudAct ubd #Threema ist noch #proprietärer als #Signal. - Gibt mit #XMPP+#OMEMO eine wirklich #sichere & #dezentrale Alternative die keine #PII wie #Telefonnummern oder #Google-Dienste braucht! Ach ja, @monocles@monocles.social / #moniclesChat haben [grade](https://monocles.social/@monocles/113925173206088469) ne #Promo zum #GlobalSwitchDay und bieten deren #App kostenlos an. - Und sonst gibt's auch noch @delta@chaos.social / #deltaChat welche #PGO/MIME & #eMail als Basis nutzen! Für [beide gibt's](https://github.com/greyhat-academy/lists.d/blob/main/xmpp.servers.list.tsv) [kostenlose Anbieter](https://github.com/greyhat-academy/lists.d/blob/main/email.servers.list.tsv) und #SelfHosting ist genauso machbar wie deren *echte #E2EE* mit #SelfCustody!
Replied in thread

@foone In particular, this code looks relevant:

sub incoming_process_packet
{
my $self = shift;

my $server;
my $packet;

# $DEBUG && warn "INCOMING: Reading incoming packet ...\n";

if (!defined($self->{'socket'}))
{
die "No socket!\n";
return;
}

my $sock = $self->{'socket'};
$self->{'user_uin'} = 0;

unless ($sock->recv($packet, 99999))
{
# croak "socket: recv2: $!";

print "Socket died! Opening a new...\n";

# open the connection
$self->{'socket'} =
new IO::Socket::INET(LocalPort => $self->{'port'},
Proto => "udp",
Type => SOCK_DGRAM,
Reuse => 1
) || croak "new: connect socket: $!";

$self->{'select'} = new IO::Select [$self->{'socket'}];
return;
}

if (!defined($packet))
{
die "No message!\n";
return;
}

my($version, $command, $sequence_number, $session_id, $zeroes,
$sequence_number2, $user_uin, $checksum);

$version = unpack("v", $packet);
if ($version == 2)
{
if ($DEBUG && $DEBUG_PACKET_DUMP)
{
print "\nIncoming packet:\n";
$self->dump_packet($packet);
}

($packet, $version) = extract_uword($packet);
($packet, $command) = extract_uword($packet);
($packet, $sequence_number) = extract_uword($packet);

($zeroes, $sequence_number2, $user_uin, $checksum, $session_id) =
(0, 0, 0, 0, 0);
}
elsif ($version == 3 || $version == 4)
{
# if ($DEBUG && $DEBUG_PACKET_DUMP)
# {
# print "\nIncoming encrypted packet:\n";
# $DEBUG_PACKET_DUMP && $self->dump_packet($packet);
# }

$packet = $self->decrypt_packet_v4($packet);

($packet, $version) = extract_uword($packet);
($packet, $session_id) = extract_uword($packet);
($packet, $zeroes) = extract_uword($packet);
($packet, $command) = extract_uword($packet);
($packet, $sequence_number) = extract_uword($packet);
($packet, $sequence_number2) = extract_uword($packet);
($packet, $user_uin) = extract_udword($packet);
($packet, $checksum) = extract_udword($packet);
}
elsif ($version == 5)
{
# if ($DEBUG && $DEBUG_PACKET_DUMP)
# {
# print "\nIncoming encrypted packet:\n";
# $self->dump_packet($packet);
# }

my($checkcode) = $self->find_checkcode_v5($packet);
$packet = $self->crypt_packet_v5($packet, $checkcode);

my($org_packet) = $packet;

($packet, $version) = extract_uword($packet);
($packet, $zeroes) = extract_udword($packet);
($packet, $user_uin) = extract_udword($packet);
($packet, $session_id) = extract_udword($packet);
($packet, $command) = extract_uword($packet);
($packet, $sequence_number) = extract_uword($packet);
($packet, $sequence_number2) = extract_uword($packet);
($packet, $checksum) = extract_udword($packet);

if ($DEBUG && $DEBUG_PACKET_DUMP &&
($DEBUG_ACK ||
($command ne $client_commands{'ACK'} &&
$command ne $client_commands{'KEEP_ALIVE'} &&
$command ne $client_commands{'KEEP_ALIVE_2'})))
{
print "\nIncoming decrypted packet:\n";
$self->dump_packet($org_packet);
}

}
else
{
$DEBUG && warn("Cannot handle version $version packets!!!\n");
return;
}

if ($DEBUG)
{
my $command_hex = &uword_to_hex($command);
my $sc = $client_commands_bynumber{$command};
if ($sc)
{
if ($DEBUG_ACK ||
($command ne $client_commands{'ACK'} &&
$command ne $client_commands{'KEEP_ALIVE'} &&
$command ne $client_commands{'KEEP_ALIVE_2'}))
{
warn "INCOMING: Got command " .
$client_commands_bynumber{$command} . " ($command/$command_hex) ",
"sequence $sequence_number, $sequence_number2\n";
}
}
else
{
warn "INCOMING: Got unknown command number $command/$command_hex ",
"sequence $sequence_number, $sequence_number2\n";
}
}

if ($command eq $client_commands{'ACK'}) {
# ack is special case, we ignore it for the moment
# TODO we should keep track of packets sent (hash, indexed
# by sequence number) and tick them off when they're
# ACK'd. Then resend things if they aren't. Fiddly.
$DEBUG && $DEBUG_ACK &&
warn "INCOMING: Got ACK for packet $sequence_number\n";
}
else
{
# common packet info
my(%packet_header) =
(
'version' => $version,
'command' => $command,
'seq_num' => $sequence_number,
'seq_num2' => $sequence_number2,
'user_uin' => $user_uin,
'checksum' => $checksum,
'session_id' => $session_id,
);

$self->{'packet_header'} = \%packet_header;
$DEBUG && $DEBUG_ACK &&
warn "INCOMING: Sending ACK for packet $sequence_number, ",
"$sequence_number2, random=$session_id\n";

# If this is a disconnect message we must not ack it, so the ack is
# done in receive_send_text_code if needed...
unless ($command == $client_commands{'SEND_TEXT_CODE'})
{
$self->send_ack($sequence_number, $sequence_number2);
}

if ($self->session_check_user_status($user_uin, 'OFFLINE'))
{
# User is set offline => we only allow session setup commands
if ($command != $client_commands{'LOGIN'} &&
$command != $client_commands{'OLD_USER_REG'} &&
$command != $client_commands{'NEW_USER_REG'} &&
$command != $client_commands{'NEW_USER_1'} &&
$command != $client_commands{'SEND_TEXT_CODE'})
{
print(">>NOT_LOGGED_IN:\n",
" user_uin=$user_uin\n");

$packet = "";

$self->send_packet($self->construct_packet("NOT_LOGGED_IN", $packet));
return 0;
}
}

# Update time stamp
if ($user_uin != 0 && $command != $client_commands{'LOGIN'})
{
$self->{'sessions'}{$user_uin}{'last_packet_received_time'} = time;
}

$self->session_kill_inactive_sessions();

my $command_name = "receive_" . lc($client_commands_bynumber{$command});
my $coderef = $self->can($command_name);
if ($command_name && $coderef)
{
# we've found a method that can process this type of packet
return $self->$command_name($packet);
}
else
{
# TODO: can't cope - what do we do with this packet!!
warn("UNKNOWN PACKET TYPE: '$command/",
&uword_to_hex($command),
"', sequence number '$sequence_number, $sequence_number2'");
$DEBUG && warn("INCOMING: Unknown packet dump: ", Dumper($packet), "\n");
return 0;
}
}
}

Here's another blast from the IM past… AOL Instant Messenger is back! Sort of! Although AIM shut down in 2017, the retro-aim-server project keeps it alive in modern, self-hosted server that supports ICQ, too. github.com/mk6i/retro-aim-serv

I'm running an instance at oscar.schrockwell.com, so sign in with any screen name and come say hello! Client install directions here: github.com/mk6i/retro-aim-serv

Replied in thread

@rysiek @agturcz that's not how you fix #TechIlliteracy, espechally since things changed for the better.

@monocles / #monoclesChat & @gajim / #gajim are quite easy, whereas @signalapp / #Signal demands #PII in the form of a #Phone number which is more often than not not legally obtainable without "#KYC" aka. "forced #SelfDoxxing" all whilst being an extremely #centralized, #SingleVendor & #SingleProvider solution that falls under #CloudAct ant thus cannot adhere to #GDPR & #BDSG!

Otherwise we'd only perpetuate the #Enshittification-#Lifecycle as has happened with #AIM, #ICQ, #BBM and so many more...

  • Mark my words, cuz I've been proven correct up to this point.

If #Signal and @Mer__edith actually cared, they would've setup their system truly decentralized as an #OnionService over @torproject / #Tor!

Mastodon 🐘Michał "rysiek" Woźniak · 🇺🇦 (@rysiek@mstdn.social)@kkarhan@infosec.space I ran and hosted a bunch of XMPP servers a while back. It was a pain to use, and it was easy for users to make mistakes and accidentally send messages in the clear. You are making people les safe. Last time: please stop doing this in my mentions and replies. @agturcz@circumstances.run @torproject@mastodon.social
#THXBYE#EOD#ITsec
Replied in thread

@MastoDenunzianten @monocles

Natürlich kannste der #Desinformation von #Diensteanbietern glauben, aber dann ist #WhatsApp auch #E2EE weil die #SSL nutzen (und mit der Logik auch #WeChat & #QQ - lol)!

  • Ernsthaft, es gibt nen Grund warum #XMPP+#OMEMO & #PGP/MIME bis heute sich halten und proprietäre shice alla #MSN & #ICQ tot ist.

Gerade weil wirkliche #InfoSec & #OpSec sowie #ComSec & #ITsec nur mit #Transparenz geht.

  • Ich vertrau' prinzipiell keinem Code oder Anbieter...

It's a good time to remember the long-forgotten programs like ICQ and QIP, where the only thing left from the good old ICQ is the "o-ou" sound. They already had their own emojis and icons, and in the latest versions even their own qip.ru account. But I agree, it was a good thing! It made ICQ more comfortable and interesting. Just a plugin like the one that fetched the current song from Winamp and put the title in ICQ status was worth a lot!

It was amazing that ICQ had an open protocol that allowed you to write your own clients. I remember a rebellious one under Mandriva Linux that I built from source code. It took an enormous amount of energy. Especially later with the encodings. But what joy it was when everything started working stably!

In the picture is my honeymoon with Linux. I started making these kinds of screenshots before it became mainstream 😬

#Nostalgia#ICQ#QIP
Replied in thread

@briankrebs +9001%

I've seen how #tumblr got #enshittified and how #Musk ruined #Twitter into #Shitter...

  • I'm not gonna do the same mistake again!

"#Fediverse or #GTFO!" should be the motto, cuz only truly #decentralized #SocialMedia and Communications will survive...

Everything else, regardless if #TikTok, #Threads or #Discord will die like #ICQ before, whilst we'll all be able to use #ActivityPub, #IRC, #XMPP-#OMEMO and #PGP/MIME-encrypted #eMail forever...

El 15 de noviembre de 1996 se libera el programa de mensajería instantánea ICQ. Llamado originalmente Mirabilis fue creado por dos jóvenes israelíes en 1996. Llegó a tener más de 50 millones de usuarios activos y en 1998 fue adquirida por AOL por 287 millones usd. Desde abril de 2010 pertenece a la compañía rusa Mail.Ru que lo descontinuó el 26 de junio de 2024
#retrocomputingmx #ICQ