| 157 | } |
| 158 | |
| 159 | func (pkt *Packet) Header() Header { |
| 160 | if pkt.Flag()&common.NHP_FLAG_EXTENDEDLENGTH == 0 { |
| 161 | //nolint:gosec // G103: Intentional unsafe pointer for zero-copy packet header access |
| 162 | return (*curve.HeaderCurve)(unsafe.Pointer(&pkt.Content[0])) |
| 163 | } else { |
| 164 | switch pkt.Flag() & (0xF << 12) { |
| 165 | case common.NHP_FLAG_SCHEME_GMSM: |
| 166 | fallthrough |
| 167 | default: |
| 168 | //nolint:gosec // G103: Intentional unsafe pointer for zero-copy packet header access |
| 169 | return (*gmsm.HeaderGmsm)(unsafe.Pointer(&pkt.Content[0])) |
| 170 | } |
| 171 | } |
| 172 | } |
| 173 | |
| 174 | func (pkt *Packet) HeaderWithCipherScheme(cipherScheme int) Header { |
| 175 | switch cipherScheme { |