From: Irina Date: Sun, 7 Jun 2020 13:43:46 +0000 (+0300) Subject: RIC-398 - Fix all critical issues from static code analysis scan X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=9093b29ad0cbe89e3e0c71b3d72d7961420f907c;p=ric-plt%2Fe2mgr.git RIC-398 - Fix all critical issues from static code analysis scan Change-Id: I7695a94eebe0d7bc0af50484e64fc1545afb13b3 Signed-off-by: Irina --- diff --git a/E2Manager/controllers/nodeb_controller.go b/E2Manager/controllers/nodeb_controller.go index 90b9311..d30db6b 100644 --- a/E2Manager/controllers/nodeb_controller.go +++ b/E2Manager/controllers/nodeb_controller.go @@ -40,6 +40,8 @@ const ( ParamRanName = "ranName" LimitRequest = 2000 ) +const ApplicationJson = "application/json" +const ContentType = "Content-Type" type INodebController interface { Shutdown(writer http.ResponseWriter, r *http.Request) @@ -210,13 +212,13 @@ func (c *NodebController) handleRequest(writer http.ResponseWriter, header *http } c.logger.Infof("[E2 Manager -> Client] #NodebController.handleRequest - response: %s", result) - writer.Header().Set("Content-Type", "application/json") + writer.Header().Set(ContentType, ApplicationJson) writer.Write(result) } func (c *NodebController) validateRequestHeader(header *http.Header) error { - if header.Get("Content-Type") != "application/json" { + if header.Get(ContentType) != ApplicationJson { c.logger.Errorf("#NodebController.validateRequestHeader - validation failure, incorrect content type") return e2managererrors.NewHeaderValidationError() @@ -281,7 +283,7 @@ func (c *NodebController) handleErrorResponse(err error, writer http.ResponseWri c.logger.Errorf("[E2 Manager -> Client] #NodebController.handleErrorResponse - http status: %d, error response: %+v", httpError, errorResponseDetails) - writer.Header().Set("Content-Type", "application/json") + writer.Header().Set(ContentType, ApplicationJson) writer.WriteHeader(httpError) _, err = writer.Write(errorResponse) } diff --git a/E2Manager/converters/x2_setup_response_converter.go b/E2Manager/converters/x2_setup_response_converter.go index 2ce50b4..e98523f 100644 --- a/E2Manager/converters/x2_setup_response_converter.go +++ b/E2Manager/converters/x2_setup_response_converter.go @@ -44,6 +44,8 @@ const ( maxnoofNeighbours = 512 ) +const Format = "%02x:%02x" + type X2SetupResponseConverter struct { logger *logger.Logger } @@ -293,7 +295,7 @@ func getServedCellsNeighbour_Info(neighbour_Information *C.Neighbour_Information //pLMN_Identity:eUTRANcellIdentifier plmnId := C.GoBytes(unsafe.Pointer(member.eCGI.pLMN_Identity.buf), C.int(member.eCGI.pLMN_Identity.size)) eUTRANcellIdentifier := C.GoBytes(unsafe.Pointer(member.eCGI.eUTRANcellIdentifier.buf), C.int(member.eCGI.eUTRANcellIdentifier.size)) - neighbourInfo := &entities.NeighbourInformation{Ecgi: fmt.Sprintf("%02x:%02x", plmnId, eUTRANcellIdentifier)} + neighbourInfo := &entities.NeighbourInformation{Ecgi: fmt.Sprintf(Format, plmnId, eUTRANcellIdentifier)} neighbourInfo.Pci = uint32(member.pCI) @@ -334,7 +336,7 @@ func getServedCells(servedCellsIE *C.ServedCells_t) ([]*entities.ServedCellInfo, //pLMN_Identity:eUTRANcellIdentifier plmnId := C.GoBytes(unsafe.Pointer(member.servedCellInfo.cellId.pLMN_Identity.buf), C.int(member.servedCellInfo.cellId.pLMN_Identity.size)) eUTRANcellIdentifier := C.GoBytes(unsafe.Pointer(member.servedCellInfo.cellId.eUTRANcellIdentifier.buf), C.int(member.servedCellInfo.cellId.eUTRANcellIdentifier.size)) - servedCellInfo.CellId = fmt.Sprintf("%02x:%02x", plmnId, eUTRANcellIdentifier) + servedCellInfo.CellId = fmt.Sprintf(Format, plmnId, eUTRANcellIdentifier) servedCellInfo.Tac = fmt.Sprintf("%02x", C.GoBytes(unsafe.Pointer(member.servedCellInfo.tAC.buf), C.int(member.servedCellInfo.tAC.size))) @@ -388,7 +390,7 @@ func getGUGroupIDList(guGroupIDList *C.GUGroupIDList_t) []string { for _, guGroupID := range guGroupIDList_slice { plmnId := C.GoBytes(unsafe.Pointer(guGroupID.pLMN_Identity.buf), C.int(guGroupID.pLMN_Identity.size)) mME_Group_ID := C.GoBytes(unsafe.Pointer(guGroupID.mME_Group_ID.buf), C.int(guGroupID.mME_Group_ID.size)) - ids = append(ids, fmt.Sprintf("%02x:%02x", plmnId, mME_Group_ID)) + ids = append(ids, fmt.Sprintf(Format, plmnId, mME_Group_ID)) } } diff --git a/E2Manager/handlers/rmrmsghandlers/x2_reset_request_notification_handler.go b/E2Manager/handlers/rmrmsghandlers/x2_reset_request_notification_handler.go index 85255eb..1da8758 100644 --- a/E2Manager/handlers/rmrmsghandlers/x2_reset_request_notification_handler.go +++ b/E2Manager/handlers/rmrmsghandlers/x2_reset_request_notification_handler.go @@ -38,6 +38,8 @@ import ( "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities" ) +const ResetRequesLogInfoElapsedTime = "#X2ResetRequestNotificationHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms" + type X2ResetRequestNotificationHandler struct { logger *logger.Logger rnibDataService services.RNibDataService @@ -61,7 +63,7 @@ func (h X2ResetRequestNotificationHandler) Handle(request *models.NotificationRe nb, rNibErr := h.rnibDataService.GetNodeb(request.RanName) if rNibErr != nil { h.logger.Errorf("#X2ResetRequestNotificationHandler.Handle - failed to retrieve nodeB entity. RanName: %s. Error: %s", request.RanName, rNibErr.Error()) - h.logger.Infof("#X2ResetRequestNotificationHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetRequesLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) return } @@ -69,19 +71,19 @@ func (h X2ResetRequestNotificationHandler) Handle(request *models.NotificationRe if nb.ConnectionStatus == entities.ConnectionStatus_SHUTTING_DOWN { h.logger.Warnf("#X2ResetRequestNotificationHandler.Handle - nodeB entity in incorrect state. RanName %s, ConnectionStatus %s", nb.RanName, nb.ConnectionStatus) - h.logger.Infof("#X2ResetRequestNotificationHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetRequesLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) return } if nb.ConnectionStatus != entities.ConnectionStatus_CONNECTED { h.logger.Errorf("#X2ResetRequestNotificationHandler.Handle - nodeB entity in incorrect state. RanName %s, ConnectionStatus %s", nb.RanName, nb.ConnectionStatus) - h.logger.Infof("#X2ResetRequestNotificationHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetRequesLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) return } msg := models.NewRmrMessage(rmrCgo.RIC_X2_RESET_RESP, request.RanName, e2pdus.PackedX2ResetResponse, request.TransactionId, request.GetMsgSrc()) _ = h.rmrSender.Send(msg) - h.logger.Infof("#X2ResetRequestNotificationHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetRequesLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) _ = h.ranStatusChangeManager.Execute(rmrCgo.RAN_RESTARTED, enums.RAN_TO_RIC, nb) } diff --git a/E2Manager/handlers/rmrmsghandlers/x2_reset_response_handler.go b/E2Manager/handlers/rmrmsghandlers/x2_reset_response_handler.go index 1097ed2..ca1b175 100644 --- a/E2Manager/handlers/rmrmsghandlers/x2_reset_response_handler.go +++ b/E2Manager/handlers/rmrmsghandlers/x2_reset_response_handler.go @@ -36,6 +36,8 @@ import ( "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities" ) +const ResetResponseLogInfoElapsedTime = "#X2ResetResponseHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms" + type X2ResetResponseHandler struct { logger *logger.Logger rnibDataService services.RNibDataService @@ -64,19 +66,19 @@ func (h X2ResetResponseHandler) Handle(request *models.NotificationRequest) { if nodebInfo.ConnectionStatus == entities.ConnectionStatus_SHUTTING_DOWN { h.logger.Warnf("#X2ResetResponseHandler.Handle - RAN name: %s, connection status: %s - nodeB entity in incorrect state", nodebInfo.RanName, nodebInfo.ConnectionStatus) - h.logger.Infof("#X2ResetResponseHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetResponseLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) return } if nodebInfo.ConnectionStatus != entities.ConnectionStatus_CONNECTED { h.logger.Errorf("#X2ResetResponseHandler.Handle - RAN name: %s, connection status: %s - nodeB entity in incorrect state", nodebInfo.RanName, nodebInfo.ConnectionStatus) - h.logger.Infof("#X2ResetResponseHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetResponseLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) return } isSuccessfulResetResponse, err := h.isSuccessfulResetResponse(ranName, request.Payload) - h.logger.Infof("#X2ResetResponseHandler.Handle - Summary: elapsed time for receiving and handling reset request message from E2 terminator: %f ms", utils.ElapsedTime(request.StartTime)) + h.logger.Infof(ResetResponseLogInfoElapsedTime, utils.ElapsedTime(request.StartTime)) if err != nil || !isSuccessfulResetResponse { return