X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=test%2Fsmtp-dummy.c;h=a7c1fe4fe822417d8bfb9819144627b522290a6e;hb=75bdce79527571c12c5de0c630747d6262b73fbd;hp=71992edd1d968d5d0d14907ef505f0a0427f3051;hpb=f7130468d27c4f37d45e6aa60baacfc3329ccff4;p=notmuch diff --git a/test/smtp-dummy.c b/test/smtp-dummy.c index 71992edd..a7c1fe4f 100644 --- a/test/smtp-dummy.c +++ b/test/smtp-dummy.c @@ -129,6 +129,7 @@ main (int argc, char *argv[]) int reuse; int background; int ret = 0; + socklen_t addrlen; progname = argv[0]; @@ -191,7 +192,7 @@ main (int argc, char *argv[]) memset (&addr, 0, sizeof (addr)); addr.sin_family = AF_INET; - addr.sin_port = htons (25025); + addr.sin_port = 0; addr.sin_addr = *(struct in_addr *) hostinfo->h_addr; err = bind (sock, (struct sockaddr *) &addr, sizeof (addr)); if (err) { @@ -202,6 +203,18 @@ main (int argc, char *argv[]) goto DONE; } + addrlen = sizeof (addr); + err = getsockname (sock, (struct sockaddr *) &addr, &addrlen); + if (err) { + fprintf (stderr, "Error: getsockname() failed: %s\n", + strerror (errno)); + close (sock); + ret = 1; + goto DONE; + } + + printf ("smtp_dummy_port='%d'\n", ntohs (addr.sin_port)); + err = listen (sock, 1); if (err) { fprintf (stderr, "Error: listen() failed: %s\n",