{"record":{"id":"2c3290811fdee6f7","repo":"hyperledger/fabric","slug":"error-unmarshalling-identifierheader","errorCode":null,"errorMessage":"error unmarshalling IdentifierHeader","messagePattern":"error unmarshalling IdentifierHeader","errorType":"error_code","errorClass":null,"httpStatus":null,"severity":"error","filePath":"protoutil/unmarshalers.go","lineNumber":82,"sourceCode":"// UnmarshalChaincodeID unmarshals bytes to a ChaincodeID\nfunc UnmarshalChaincodeID(bytes []byte) (*peer.ChaincodeID, error) {\n\tccid := &peer.ChaincodeID{}\n\terr := proto.Unmarshal(bytes, ccid)\n\treturn ccid, errors.Wrap(err, \"error unmarshalling ChaincodeID\")\n}\n\n// UnmarshalSignatureHeader unmarshals bytes to a SignatureHeader\nfunc UnmarshalSignatureHeader(bytes []byte) (*common.SignatureHeader, error) {\n\tsh := &common.SignatureHeader{}\n\terr := proto.Unmarshal(bytes, sh)\n\treturn sh, errors.Wrap(err, \"error unmarshalling SignatureHeader\")\n}\n\n// UnmarshalIdentifierHeader unmarshals bytes to an IdentifierHeader\nfunc UnmarshalIdentifierHeader(bytes []byte) (*common.IdentifierHeader, error) {\n\tih := &common.IdentifierHeader{}\n\terr := proto.Unmarshal(bytes, ih)\n\treturn ih, errors.Wrap(err, \"error unmarshalling IdentifierHeader\")\n}\n\nfunc UnmarshalSerializedIdentity(bytes []byte) (*msp.SerializedIdentity, error) {\n\tsid := &msp.SerializedIdentity{}\n\terr := proto.Unmarshal(bytes, sid)\n\treturn sid, errors.Wrap(err, \"error unmarshalling SerializedIdentity\")\n}\n\n// UnmarshalHeader unmarshals bytes to a Header\nfunc UnmarshalHeader(bytes []byte) (*common.Header, error) {\n\thdr := &common.Header{}\n\terr := proto.Unmarshal(bytes, hdr)\n\treturn hdr, errors.Wrap(err, \"error unmarshalling Header\")\n}\n\n// UnmarshalConfigEnvelope unmarshals bytes to a ConfigEnvelope\nfunc UnmarshalConfigEnvelope(bytes []byte) (*common.ConfigEnvelope, error) {\n\tcfg := &common.ConfigEnvelope{}","sourceCodeStart":64,"sourceCodeEnd":100,"githubUrl":"https://github.com/hyperledger/fabric/blob/2736b63f8fd5932511d56fe68b7039d15977f7f6/protoutil/unmarshalers.go#L64-L100","documentation":"Returned by protoutil.UnmarshalIdentifierHeader when proto.Unmarshal fails on the supplied bytes — they do not decode as a common.IdentifierHeader. Generic unmarshal wrapper for this rarely used header type.","triggerScenarios":"Thrown at protoutil/unmarshalers.go:82 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Reject the message carrying the malformed identifier header","Confirm the bytes actually encode an IdentifierHeader"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2736b63f8fd5932511d56fe68b7039d15977f7f6","analyzedAt":"2026-09-04T08:52:36.465Z","contentChangedAt":"2026-09-04T08:52:36.465Z","schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}