func handleSysGenerateRootAttemptPut(core *vault.Core, w http.ResponseWriter, r *http.Request) { // Parse the request var req GenerateRootInitRequest if err := parseRequest(r, &req); err != nil { respondError(w, http.StatusBadRequest, err) return } if len(req.OTP) > 0 && len(req.PGPKey) > 0 { respondError(w, http.StatusBadRequest, fmt.Errorf("only one of \"otp\" and \"pgp_key\" must be specified")) return } // Attemptialize the generation err := core.GenerateRootInit(req.OTP, req.PGPKey) if err != nil { respondError(w, http.StatusBadRequest, err) return } respondOk(w, nil) }