X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2Fsmtp-dummy.c;h=a7c1fe4fe822417d8bfb9819144627b522290a6e;hp=71992edd1d968d5d0d14907ef505f0a0427f3051;hb=cd8006886b1c80ff556a96f1e84e3d3914067a54;hpb=43668950626f347f05aad7d49cd9ea4383030443 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",