home · contact · privacy
Re-wrote large parts of the server client architecture. No more fifo.
[plomrogue] / src / client / io.h
index 784c681e359ad27687db2bb3cf69e37b2b9cb79f..4db04cf2594753769161b6881ad082a0ca13c0d9 100644 (file)
@@ -9,19 +9,23 @@
 
 
 
-/* Try sending "msg" to the server by writing it to the file at
- * world.path_server_in. Try to open it 2^16 times before giving up. After
- * opening, try to write to it 2^16 times before giving up.
+/* Write "msg" plus newline to server input file at world.path_server_in.
+ *
+ * "msg"  must fit into size defined by PIPE_BUF so that no race conditiosn
+ * arise by many clients writing to the file in parallel.
  */
-extern void try_send(char * msg);
-
-/* Keep checking for user input and a changed server out file. Update client's
- * world representation on out file changes. Manipulate the client and send
- * commands to server based on the user input as interpreted by the control.h
- * library. On each change / activity, re-draw the windows with draw_all_wins().
- * When the loop ends regularly (due to the user sending a quit command), return
- * an appropriate quit message to write to stdout when the client winds down.
- * Also call reset_windows() on receiving a SIGWINCH.
+extern void send(char * msg);
+
+/* Keep checking for user input, a changed worldstate file and the server's
+ * wakefulness. Update client's world representation on worldstate file changes.
+ * Manipulate the client and send commands to server based on the user input as
+ * interpreted by the control.h library.
+ *
+ * On each change / activity, re-draw the windows with draw_all_wins(). When the
+ * loop ends regularly (due to the user sending a quit command), return an
+ * appropriate quit message to write to stdout when the client winds down. Call
+ * reset_windows() on receiving a SIGWINCH. Abort on assumed server death if the
+ * server's out file does not get updated, even on PING requests.
  */
 extern char * io_loop();