<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Pthreads on Aayush Bajaj's Augmenting Infrastructure</title><link>https://abaj.ai/tags/pthreads/</link><description>Recent content in Pthreads on Aayush Bajaj's Augmenting Infrastructure</description><generator>Hugo</generator><language>en</language><copyright>© 2026 Aayush Bajaj</copyright><lastBuildDate>Fri, 10 Jul 2026 08:15:43 +1000</lastBuildDate><atom:link href="https://abaj.ai/tags/pthreads/index.xml" rel="self" type="application/rss+xml"/><item><title>LAN Messenger</title><link>https://abaj.ai/wiki/csp/lan-messenger/</link><pubDate>Fri, 10 Jul 2026 01:33:10 +1000</pubDate><guid>https://abaj.ai/wiki/csp/lan-messenger/</guid><description>&lt;p>&amp;ldquo;tessenger&amp;rdquo; is my unsw networks assignment: a multi-client chat server in raw c — &lt;code>server.c&lt;/code> (583 lines) and &lt;code>client.c&lt;/code> (253), no libraries beyond pthreads and the bsd socket api (Kernighan, Brian W. and Ritchie, Dennis M., 1988). it does authentication with timed lockout, private and group messaging, presence, audit logs, and a udp side channel for peer-to-peer file transfer. this page walks the architecture, weaves in the socket theory the assignment was designed to teach, and then does something the assignment never required: an honest concurrency audit of my own submission, with the bugs demonstrated live.&lt;span class="margin-note" data-note="everything quoted below — compiles, session transcripts, log files, even the crash — is a real run of this code on this machine, december-2023 sources untouched except where noted.">
 &lt;span class="margin-note-indicator">𐃏&lt;/span>
&lt;/span>
&lt;/p></description></item></channel></rss>