73 |
|
|
74 |
while ((c = getopt(argc, argv, "DVc:d:kl:" |
while ((c = getopt(argc, argv, "DVc:d:kl:" |
75 |
#ifdef ENCRYPTED_PASSWORDS |
#ifdef ENCRYPTED_PASSWORDS |
76 |
"p" |
"p" |
77 |
#endif |
#endif |
78 |
"qv")) != -1) { |
"qv")) != -1) { |
79 |
switch (c) { |
switch (c) { |
80 |
case 'D': |
case 'D': |
81 |
if (opts.debug < 2) |
if (opts.debug < 2) |
196 |
if (setjmp(acctloop)) |
if (setjmp(acctloop)) |
197 |
continue; |
continue; |
198 |
|
|
199 |
if (init_connection(&connpri, ca->server, ca->port, |
if (init_connection(&connpri, ca->server, ca->port, ca->ssl)) |
|
ca->ssl)) |
|
200 |
continue; |
continue; |
201 |
|
|
202 |
r = response_greeting(&connpri); |
r = response_greeting(&connpri); |
208 |
continue; |
continue; |
209 |
|
|
210 |
#ifdef SSL_TLS |
#ifdef SSL_TLS |
211 |
if (ca->ssl == SSL_DISABLED && |
if (ca->ssl == SSL_DISABLED && connpri.caps & CAPS_STARTTLS) |
|
connpri.caps & CAPS_STARTTLS) |
|
212 |
if (negotiate_tls(&connpri) == RESPONSE_OK) |
if (negotiate_tls(&connpri) == RESPONSE_OK) |
213 |
check_capabilities(&connpri); |
check_capabilities(&connpri); |
214 |
#endif |
#endif |
224 |
} |
} |
225 |
#ifdef CRAM_MD5 |
#ifdef CRAM_MD5 |
226 |
if (connpri.caps & CAPS_CRAMMD5) |
if (connpri.caps & CAPS_CRAMMD5) |
227 |
r = auth_cram_md5(&connpri, |
r = auth_cram_md5(&connpri, ca->user, ca->pass); |
|
ca->user, ca->pass); |
|
228 |
else |
else |
229 |
#endif |
#endif |
230 |
r = login(&connpri, ca->user, |
r = login(&connpri, ca->user, ca->pass); |
|
ca->pass); |
|
231 |
|
|
232 |
if (r == RESPONSE_NO) { |
if (r == RESPONSE_NO) { |
233 |
error("username %s or password rejected " |
error("username %s or password rejected " |
260 |
|
|
261 |
switch (fork()) { |
switch (fork()) { |
262 |
case -1: |
case -1: |
263 |
fatal(ERROR_FORK, "forking; %s\n", |
fatal(ERROR_FORK, "forking; %s\n", strerror(errno)); |
|
strerror(errno)); |
|
264 |
break; |
break; |
265 |
case 0: |
case 0: |
266 |
break; |
break; |
273 |
} |
} |
274 |
|
|
275 |
if (setsid() == -1) |
if (setsid() == -1) |
276 |
fatal(ERROR_FORK, "creating session; %s\n", |
fatal(ERROR_FORK, "creating session; %s\n", strerror(errno)); |
|
strerror(errno)); |
|
277 |
|
|
278 |
switch (fork()) { |
switch (fork()) { |
279 |
case -1: |
case -1: |
280 |
fatal(ERROR_FORK, "forking; %s\n", |
fatal(ERROR_FORK, "forking; %s\n", strerror(errno)); |
|
strerror(errno)); |
|
281 |
break; |
break; |
282 |
case 0: |
case 0: |
283 |
break; |
break; |