GRPC: Make ra.FinalizeOrder a pass-through (#5549)
- Move `FinalizeOrder` logic from `grpc/ra-wrappers.go` to `ra` and `wfe` Fixes #5530
This commit is contained in:
parent
2a5b9f651a
commit
3480cc5ee9
|
|
@ -75,14 +75,7 @@ func (ras *RegistrationAuthorityClientWrapper) NewOrder(ctx context.Context, req
|
|||
}
|
||||
|
||||
func (ras *RegistrationAuthorityClientWrapper) FinalizeOrder(ctx context.Context, request *rapb.FinalizeOrderRequest) (*corepb.Order, error) {
|
||||
resp, err := ras.inner.FinalizeOrder(ctx, request)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if resp == nil || !orderValid(resp) {
|
||||
return nil, errIncompleteResponse
|
||||
}
|
||||
return resp, nil
|
||||
return ras.inner.FinalizeOrder(ctx, request)
|
||||
}
|
||||
|
||||
// RegistrationAuthorityServerWrapper is the gRPC version of a core.RegistrationAuthority server
|
||||
|
|
@ -147,9 +140,5 @@ func (ras *RegistrationAuthorityServerWrapper) NewOrder(ctx context.Context, req
|
|||
}
|
||||
|
||||
func (ras *RegistrationAuthorityServerWrapper) FinalizeOrder(ctx context.Context, request *rapb.FinalizeOrderRequest) (*corepb.Order, error) {
|
||||
if request == nil || request.Order == nil || request.Csr == nil {
|
||||
return nil, errIncompleteRequest
|
||||
}
|
||||
|
||||
return ras.inner.FinalizeOrder(ctx, request)
|
||||
}
|
||||
|
|
|
|||
4
ra/ra.go
4
ra/ra.go
|
|
@ -980,6 +980,10 @@ func (ra *RegistrationAuthorityImpl) failOrder(
|
|||
// If successful the order will be returned in processing status for the client
|
||||
// to poll while awaiting finalization to occur.
|
||||
func (ra *RegistrationAuthorityImpl) FinalizeOrder(ctx context.Context, req *rapb.FinalizeOrderRequest) (*corepb.Order, error) {
|
||||
if req == nil || req.Order == nil {
|
||||
return nil, errIncompleteGRPCRequest
|
||||
}
|
||||
|
||||
order := req.Order
|
||||
|
||||
if order.Status != string(core.StatusReady) {
|
||||
|
|
|
|||
|
|
@ -2275,6 +2275,11 @@ func (wfe *WebFrontEndImpl) FinalizeOrder(ctx context.Context, logEvent *web.Req
|
|||
wfe.sendError(response, logEvent, web.ProblemDetailsForError(err, "Error finalizing order"), err)
|
||||
return
|
||||
}
|
||||
if updatedOrder == nil || order.Id == 0 || order.Created == 0 || order.RegistrationID == 0 || order.Expires == 0 || len(order.Names) == 0 {
|
||||
err = errors.New("Incomplete gRPC response message")
|
||||
wfe.sendError(response, logEvent, web.ProblemDetailsForError(err, "Error validating order"), err)
|
||||
return
|
||||
}
|
||||
|
||||
orderURL := web.RelativeEndpoint(request,
|
||||
fmt.Sprintf("%s%d/%d", orderPath, acct.ID, updatedOrder.Id))
|
||||
|
|
|
|||
Loading…
Reference in New Issue