summaryrefslogtreecommitdiff
blob: 2a93cb385e015ef0830aa9fa8e077b669a536577 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
http://dev.mutt.org/trac/changeset/6b057dc52222
http://dev.mutt.org/trac/ticket/3322

# HG changeset patch
# User Antonio Radici <antonio@dyne.org>
# Date 1267406350 28800
# Node ID 6b057dc522224530f8d3146ce5efef747c60d1dc
# Parent  2c78b28027cc59762d8c10097196b3aa855e185a
pop: allow user-specified port to override default in URL.
Closes #3322.

diff -r 2c78b28027cc -r 6b057dc52222 pop_lib.c
--- a/pop_lib.c	Sun Feb 28 17:00:33 2010 -0800
+++ b/pop_lib.c	Sun Feb 28 17:19:10 2010 -0800
@@ -43,6 +43,7 @@
   /* Defaults */
   acct->flags = 0;
   acct->type = M_ACCT_TYPE_POP;
+  acct->port = 0;
 
   c = safe_strdup (path);
   url_parse_ciss (&url, c);
@@ -60,10 +61,12 @@
     acct->flags |= M_ACCT_SSL;
 
   service = getservbyname (url.scheme == U_POP ? "pop3" : "pop3s", "tcp");
-  if (service)
-    acct->port = ntohs (service->s_port);
-  else
-    acct->port = url.scheme == U_POP ? POP_PORT : POP_SSL_PORT;;
+  if (!acct->port) {
+    if (service)
+      acct->port = ntohs (service->s_port);
+    else
+      acct->port = url.scheme == U_POP ? POP_PORT : POP_SSL_PORT;;
+  }
 
   FREE (&c);
   return 0;