diff toys/other/netcat.c @ 674:7e846e281e38

New build infrastructure to generate FLAG_ macros and TT alias, #define FOR_commandname before #including toys.h to trigger it. Rename DEFINE_GLOBALS() to just GLOBALS() (because I could never remember if it was DECLARE_GLOBALS). Convert existing commands to use new infrastructure, and replace optflag constants with FLAG_ macros where appropriate.
author Rob Landley <rob@landley.net>
date Mon, 08 Oct 2012 00:02:30 -0500
parents 6df4ccc0acbe
children 786841fdb1e0
line wrap: on
line diff
--- a/toys/other/netcat.c	Sun Oct 07 23:53:25 2012 -0500
+++ b/toys/other/netcat.c	Mon Oct 08 00:02:30 2012 -0500
@@ -3,6 +3,9 @@
  * netcat.c - Forward stdin/stdout to a file or network connection.
  *
  * Copyright 2007 Rob Landley <rob@landley.net>
+ *
+ * TODO: udp, ipv6, genericize for telnet/microcom/tail-f
+
 
 USE_NETCAT(OLDTOY(nc, netcat, USE_NETCAT_LISTEN("tl^L^")"w#p#s:q#f:", TOYFLAG_BIN))
 USE_NETCAT(NEWTOY(netcat, USE_NETCAT_LISTEN("tl^L^")"w#p#s:q#f:", TOYFLAG_BIN))
@@ -40,10 +43,11 @@
 		netcat -s 127.0.0.1 -p 1234 -tL /bin/bash -l
 */
 
+#define FOR_netcat
 #include "toys.h"
 #include "toynet.h"
 
-DEFINE_GLOBALS(
+GLOBALS(
 	char *filename;        // -f read from filename instead of network
 	long quit_delay;       // -q Exit after EOF from stdin after # seconds.
 	char *source_address;  // -s Bind to a specific source address.
@@ -51,13 +55,6 @@
 	long wait;             // -w Wait # seconds for a connection.
 )
 
-#define TT this.netcat
-
-#define FLAG_f   1
-#define FLAG_L  32
-#define FLAG_l  64
-#define FLAG_t 128
-
 static void timeout(int signum)
 {
 	if (TT.wait) error_exit("Timeout");