Fuzzy testing MACfinder
Einfach mal "*" im BCD-Feld eingegeben …
{
"failed_response": {
"exception": {
"error": {
"code": 1,
"description": "[cntl] Ungültige Eingabesyntax für entsprechenden Datentyp",
"details": null
},
"error_type": {
"code": -20900,
"name": "format_error",
"description": "Datentyp-Formatierungsfehler"
},
"constraint": {
"name": null,
"description": null
},
"stacked_diag_params": {
"sqlstate": "2201B",
"message": "spiexceptions.InvalidRegularExpression: multiple repeat at position 6: (?i).**.*",
"detail": "",
"hint": "",
"context": "PL/pgSQL function eh.set_err(eh.stacked_diag_params_rec_type,name,name,eh.userparams_kv_rec_type[],eh.typecode_rec_type) line 8 at RAISE\\nSQL statement \"SELECT eh.set_err(sd_rec, fpkg, fname, up_kv_rec_list, et_rec)\"\\nPL/pgSQL function wapi_3_1.insert_ta_stmt_value(record,wapi_3_1.ta_stmt,text,text,jsonb,bigint,text,boolean,boolean,text,jsonb,bigint,text,boolean,boolean,boolean,text) line 228 at PERFORM\\nSQL statement \"SELECT wapi_3_1.insert_ta_stmt_value(\\n in_cvsn_rec => cvsn_rec,\\n in_stmt_rec => wapi_ta_stmt_rec,\\n in_stmt_param_name => param_rec_jsonb ->> 'name',\\n --\\n in_stmt_old_value => param_rec_jsonb ->> 'old_value',\\n in_stmt_old_value_jsonb => param_rec_jsonb -> 'old_value',\\n in_stmt_old_r_pos => (stmt_idx2pos_dict -> old_ref_stmt_idx)::integer,\\n\\n in_stmt_old_r_param => param_rec_jsonb ->> 'old_ref_stmt_param',\\n -- default: false (falls nicht angegeben)\\n in_stmt_old_r_allow_no_data => param_rec_jsonb ? 'old_ref_allow_no_data' and (param_rec_jsonb ->> 'old_ref_allow_no_data')::boolean,\\n in_stmt_old_exists => old_exists,\\n --\\n in_stmt_new_value => param_rec_jsonb ->> 'new_value',\\n in_stmt_new_value_jsonb => param_rec_jsonb -> 'new_value',\\n in_stmt_new_r_pos => (stmt_idx2pos_dict -> new_ref_stmt_idx)::integer,\\n\\n in_stmt_new_r_param => param_rec_jsonb ->> 'new_ref_stmt_param',\\n -- default: false (falls nicht angegeben)\\n in_stmt_new_r_allow_no_data => param_rec_jsonb ? 'new_ref_allow_no_data' and (param_rec_jsonb ->> 'new_ref_allow_no_data')::boolean,\\n in_stmt_new_exists => new_exists,\\n --\\n in_conv_text2json => do_text2json,\\n in_src_fmt => in_src_fmt\\n )\"\\nPL/pgSQL function wapi_3_1.insert_ta_stmt_list(bigint,wapi_3_1.imp_ta_stmt_rec_type[],text,text) line 123 at PERFORM\\nSQL statement \"SELECT wapi_3_1.insert_ta_stmt_list(\\n in_ta_id => ta_id,\\n in_stmt_list => stmt_list,\\n in_http_rq_mthd => in_http_rq_mthd\\n )\"\\nPL/pgSQL function wapi_3_1.ta_handler(text,text,text,boolean,boolean,boolean,text) line 22 at PERFORM",
"dml_src_table": null,
"schema": "",
"table": "",
"column": "",
"datatype": "",
"constraint": ""
},
"others": {},
"traceback": [
{
"function": "cntl.validate_regexp",
"param": {
" multiple repeat at position 6": " (?i).**.*"
}
},
{
"function": "cntl.conv_daty_s2db",
"param": {
"nd.bcd.name_regexp": "(?i).**.*",
"cntl.data_type.name": "regexp"
}
},
{
"function": "wapi_3_1.insert_ta_stmt_value",
"param": {
"wapi.transaction_stmt_param.name": "name_regexp",
"wapi.transaction_stmt_param.old_value": "(?i).**.*",
"wapi.transaction_stmt_param.new_value": null
}
},
{
"function": "wapi_3_1.insert_ta_stmt_list",
"param": {
"wapi.transaction_stmt.idx": "0",
"wapi.transaction_stmt.pos": 0
}
}
]
}
},
"request": {
"url": "/api/3.1//wapi/transaction/execute",
"data": [
{
"name": "nd.bcd.list",
"old": {
"name_regexp": "(?i).**.*",
"fetch_limit": 20,
"sorting_params_list": [
"name"
]
}
}
]
},
"route_info": {
"path": "/tools/macfinder"
},
"session_info": {
"browser": {
"app_code_name": "Mozilla",
"vendor": "",
"user_agent": "Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0"
},
"login_name": "zm6441"
},
"netvs": {
"build_id": "e2ec324d,Job ID 625274@ci-netdb-1.scc.kit.edu scc-gitlab/scc-net/netvs runner",
"sysinfo": {
"host_oper_mode": {
"is_devel": false,
"is_prod": true,
"is_test": false,
"mode": "prod"
},
"js_mods": [
"dnsvs",
"macauth",
"ap_list",
"macfinder"
],
"mods": [
{
"contact_mail": "dns-betrieb@scc.kit.edu",
"gitlab_url": "https://git.scc.kit.edu/scc-net/net-suite/net-suite-ip_contact",
"mod_path": "net_suite.modules.ip_contact",
"name": "ip_contact",
"printable_name": "Adressbetreuer kontaktieren",
"version": "e2ec324"
},
{
"contact_mail": "dns-betrieb@scc.kit.edu",
"gitlab_url": "https://git.scc.kit.edu/scc-net/net-suite/net-suite-dhcp_leases",
"mod_path": "net_suite.modules.dhcp_leases",
"name": "dhcp_leases",
"printable_name": "DHCP-Leases",
"version": "e2ec324"
},
{
"contact_mail": "dns-betrieb@scc.kit.edu",
"gitlab_url": "https://git.scc.kit.edu/scc-net/net-suite/net-suite-macfinder",
"mod_path": "net_suite.modules.macfinder",
"name": "macfinder",
"printable_name": "MACFinder",
"version": "e2ec324"
},
{
"contact_mail": "wlan@scc.kit.edu",
"gitlab_url": "https://git.scc.kit.edu/scc-net-wlan/ap-liste",
"mod_path": "net_suite.modules.apliste",
"name": "apliste",
"printable_name": "AP-Liste",
"version": "v1.0.0-beta0"
}
],
"version": "e2ec324",
"version_name": "Crackling Pippin"
}
}
}
Aber ernsthaft, mir entgeht grad die Logik, warum im Ausgabefeld eine Spalte "Broadcastdomain" auftaucht, wenn man die ja anscheinend explizit und ohne Wildcard vorgeben muss?