#include <ss/ss.h>
#include <com_err.h>
#include <stdio.h>

extern ss_request_table pop_requests;

#ifdef __STDC__
main(int argc, char *argv[])
#else
main(argc, argv)
int argc;
char *argv[];
#endif /* __STDC__ */
{
     int sci_idx, code;
     char *subsystem_name = "pop";
     int i;

     sci_idx = ss_create_invocation(subsystem_name, 0, 0, &pop_requests,
				    &code);
     if (code) {
	  com_err(subsystem_name, code, "creating invocation");
     }

     for (i = 1; i < argc; i++) {
	  if (0 == strcmp(argv[i], "-request")) {
	       if (i == argc - 1) {
		    fprintf(stderr, "Missing argument to -request.\n");
		    exit(1);
	       }
	       ss_execute_line(sci_idx, argv[++i], &code);
	       if (code) {
		    ss_perror(sci_idx, code, argv[i]);
	       }
	  }
	  else {
	       fprintf(stderr, "Unknown option %s\n", argv[i]);
	       fprintf(stderr, "Usage: pop [ -request request [ ... ] ]\n");
	       exit(1);
	  }
     }

     (void) ss_listen(sci_idx, &code);
     exit(0);
}
