int sec_request_prot(char *level) { int l = name_to_level(level); if (l == -1) return -1; request_data_prot = (enum protection_level)l; return 0; }
int Curl_sec_request_prot(struct connectdata *conn, const char *level) { int l = name_to_level(level); if(l == -1) return -1; conn->request_data_prot = (enum protection_level)l; return 0; }
int Curl_sec_request_prot(struct connectdata *conn, const char *level) { enum protection_level l = name_to_level(level); if(l == PROT_NONE) return -1; DEBUGASSERT(l > PROT_NONE && l < PROT_LAST); conn->request_data_prot = l; return 0; }
void cmd_prot(int argc, char **argv) { int level = -1; OPT_HELP ("Set Kerberos protection level for command or data channel. Usage:\n" " idle [options] [command|data] level\n" "Options:\n" " -h, --help show this help\n" "level should be one of the following:\n" " clear\n" " safe\n" " confidential\n" " private\n"); minargs(optind); maxargs(optind + 1); if (!ftp->sec_complete) { ftp_err(_("No security data exchange has taken place\n")); return; } level = name_to_level(argv[argc - 1]); if (level == -1) { ftp_err(_("Unrecognized protection level %s\n"), argv[argc - 1]); return; } if ((*ftp->mech->check_prot) (ftp->app_data, level)) { ftp_err(_("%s does not implement %s protection\n"), ftp->mech->name, level_to_name(level)); return; } if (argc == optind + 1 || strncasecmp(argv[optind], "data", strlen(argv[optind])) == 0) { if (sec_prot_internal(level) < 0) { return; } } else if (strncasecmp(argv[optind], "command", strlen(argv[optind])) == 0) set_command_prot(level); else { ftp_err(_("Syntax error, try %s --help for more information\n"), argv[0]); } return; }