To extend the SocketServer, first read the introduction. Then, you'll want to decide what your COMMAND and its DATA will look like. Put a hook in socketserver.c:parseReply() that catches your command and runs a C function to process it. Add a header file and a .c file for your new function, and include it in socketserver.h. Make use of already existing functionality in utils.c and base64_encode.c. Remember to return a RETURN CODE as defined in codes.h. Remember that the function that you implement returns a char*, and if you need a new code, follow the examples in codes.h carefully: you will notice that these are text plain HTTP responses, and that the very first body characters are a string representation of a numeric error code. This is critical in maintaining compatibility with the error text handler in onload.js, and with the way real web browsers will display errors when being used with SocketServer, as the BlogPost fancy-posts option does.