- nick = fullname = getenv("USER");
- for(i = 1; i < argc; i++)
- if(!strncmp(argv[i], "-h", 3)) {
- if(++i < argc) host = argv[i];
- }
- else if(!strncmp(argv[i], "-p", 3)) {
- if(++i < argc) port = (unsigned short)atoi(argv[i]);
- }
- else if(!strncmp(argv[i], "-n", 3)) {
- if(++i < argc) nick = argv[i];
- }
- else if(!strncmp(argv[i], "-k", 3)) {
- if(++i < argc) password = argv[i];
- }
- else if(!strncmp(argv[i], "-f", 3)) {
- if(++i < argc) fullname = argv[i];
- }
- else if(!strncmp(argv[i], "-v", 3)) {
- fputs("sic-"VERSION", (C)opyright MMVI Anselm R. Garbe\n", stdout);
- exit(EXIT_SUCCESS);
- }
- else {
- fputs("usage: sic [-h host] [-p port] [-n nick]"
- " [-k keyword] [-f fullname] [-v]\n", stderr);
- exit(EXIT_FAILURE);
- }
+ strlcpy(nick, user ? user : "unknown", sizeof nick);
+ ARGBEGIN {
+ case 'h':
+ host = EARGF(usage());
+ break;
+ case 'p':
+ port = EARGF(usage());
+ break;
+ case 'n':
+ strlcpy(nick, EARGF(usage()), sizeof nick);
+ break;
+ case 'k':
+ password = EARGF(usage());
+ break;
+ case 'v':
+ eprint("sic-"VERSION", © 2005-2014 Kris Maglione, Anselm R. Garbe, Nico Golde\n");
+ break;
+ default:
+ usage();
+ } ARGEND;