summaryrefslogtreecommitdiff
path: root/mail/nbsmtp/files/patch-nbsmtp.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/nbsmtp/files/patch-nbsmtp.c')
-rw-r--r--mail/nbsmtp/files/patch-nbsmtp.c66
1 files changed, 66 insertions, 0 deletions
diff --git a/mail/nbsmtp/files/patch-nbsmtp.c b/mail/nbsmtp/files/patch-nbsmtp.c
new file mode 100644
index 000000000000..3d18f430a5a3
--- /dev/null
+++ b/mail/nbsmtp/files/patch-nbsmtp.c
@@ -0,0 +1,66 @@
+--- nbsmtp.c.orig Sat Apr 7 02:09:01 2001
++++ nbsmtp.c Wed Apr 10 22:03:27 2002
+@@ -19,6 +19,8 @@
+ */
+
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+@@ -76,42 +78,45 @@
+ {
+ printf("Usage:\n");
+ printf("%s -d domain -f from@addr -h host [-p port] [-l debuglevel]\n", prog);
++ exit(EXIT_FAILURE);
+ }
+
+ int main(int argc, char *argv[])
+ {
+- int i;
++ int ch;
+
+- for(i=1; i<argc; i+=2){
+- switch(*(argv[i]+1))
++ while ( (ch = getopt(argc, argv, "h:d:f:p:l:")) != -1){
++ switch (ch)
+ {
+ case 'h':
+- host = (char *)strdup(argv[i+1]);
++ host = strdup(optarg);
+ break;
+ case 'd':
+- domain = (char *)strdup(argv[i+1]);
++ domain = strdup(optarg);
+ break;
+ case 'f':
+- fromaddr = (char *)strdup(argv[i+1]);
++ fromaddr = strdup(optarg);
+ break;
+ case 'p':
+- port = atoi(argv[i+1]);
++ port = atoi(optarg);
+ break;
+ case 'l':
+- debug_level = atoi(argv[i+1]);
++ debug_level = atoi(optarg);
+ if(debug_level > 1)
+ stdlog = fopen("nbsmtp.log", "w");
+ else
+ stdlog = stdout;
+ break;
++ case '?':
+ default:
+ print_usage(argv[0]);
++ break;
+ }
+ }
+
++ argc -= optind;
+ if(domain==NULL || fromaddr==NULL || host==NULL){
+ print_usage(argv[0]);
+- return 1;
+ }
+
+ if(port==0)