Return an error when GSSInitSecContext is called with an unacceptable mechanism.
* Throw std::invalid_argument when the argument doesn't match the GSS_EAP mechanism
* Catch the std::invalid_argument exception within GSSRequest, and generate a somewhat meaningful JSON response with it:
{ method: "method_name",
return_values:
{ major_status: -1,
minor_status: -1,
errors:
{ major_status_message: "An error occurred in parsing the JSON arguments.",
minor_status_message: "1.2.3.4 must be 1.3.6.1.5.5.15.1.1.*"
}
}
}
Note that the status codes are -1, which will never happen in GSS itself - those values are unsigned.