dgryski.semgrep-go.sortslice.bad-sort-slice-function

profile photo of dgryskidgryski
Author
581
Download Count*
License

Maybe bad sort.Slice() less function

Run Locally

Run in CI

Defintion

rules:
  - id: bad-sort-slice-function
    patterns:
      - pattern-either:
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$I] < $SLICE[$I]
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$J] < $SLICE[$I]
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$I].$FIELD < $SLICE[$I].$FIELD
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$J].$FIELD < $SLICE[$J].$FIELD
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$I] > $SLICE[$I]
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$J] > $SLICE[$I]
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$I].$FIELD > $SLICE[$I].$FIELD
              })
          - pattern: |
              sort.Slice($SLICE, func($I, $J int) bool {
                  return $SLICE[$J].$FIELD > $SLICE[$J].$FIELD
              })
    message: Maybe bad sort.Slice() less function
    languages:
      - go
    severity: ERROR
    metadata:
      license: MIT