Lines Matching defs:features
100 if (((config.features & SECURETRANSFER) != 0) &&
101 ((config.features & NOSSL) == 0)) {
155 if (((config.features & SECURETRANSFER) != 0) &&
156 (config.features & NOSSL) == 0) {
265 smtp_login(int fd, char *login, char* password, const struct smtp_features* features)
271 if (features->auth.cram_md5) {
285 if (features->auth.login) {
286 if ((config.features & INSECURE) != 0 ||
287 (config.features & SECURETRANSFER) != 0) {
363 if (((config.features & SECURETRANSFER) != 0) &&
364 ((config.features & NOSSL) == 0))
388 int perform_server_greeting(int fd, struct smtp_features* features) {
404 // Reset all features
405 memset(features, 0, sizeof(*features));
450 features->starttls = 1;
454 parse_auth_line(line, &features->auth);
460 if (features->starttls)
466 if (features->auth.cram_md5) {
469 if (features->auth.login) {
480 struct smtp_features features;
513 if ((config.features & SECURETRANSFER) == 0 ||
514 (config.features & STARTTLS) != 0) {
515 config.features |= NOSSL;
518 config.features &= ~NOSSL;
521 if ((config.features & SECURETRANSFER) != 0) {
522 error = smtp_init_crypto(fd, config.features, &features);
528 if ((config.features & STARTTLS) == 0)
533 if (perform_server_greeting(fd, &features) != 0) {
556 error = smtp_login(fd, a->login, a->password, &features);