return URG_FAILED_INIT;
case 'w':
/* get the output string */
- GetStr(&config->writeout, nextarg);
+ if('@' == *nextarg) {
+ /* the data begins with a '@' letter, it means that a file name
+ or - (stdin) follows */
+ FILE *file;
+ nextarg++; /* pass the @ */
+ if(strequal("-", nextarg))
+ file = stdin;
+ else
+ file = fopen(nextarg, "r");
+ config->writeout = file2string(file);
+ if(file && (file != stdin))
+ fclose(stdin);
+ }
+ else
+ GetStr(&config->writeout, nextarg);
break;
case 'x':
/* proxy */