(f *macho.File)
| 166 | } |
| 167 | |
| 168 | func FindCodeSigCmd(f *macho.File) (CodeSigCmd, bool) { |
| 169 | get32 := f.ByteOrder.Uint32 |
| 170 | for _, l := range f.Loads { |
| 171 | data := l.Raw() |
| 172 | cmd := get32(data) |
| 173 | if cmd == LC_CODE_SIGNATURE { |
| 174 | return CodeSigCmd{ |
| 175 | cmd, |
| 176 | get32(data[4:]), |
| 177 | get32(data[8:]), |
| 178 | get32(data[12:]), |
| 179 | }, true |
| 180 | } |
| 181 | } |
| 182 | return CodeSigCmd{}, false |
| 183 | } |
| 184 | |
| 185 | func put32be(b []byte, x uint32) []byte { binary.BigEndian.PutUint32(b, x); return b[4:] } |
| 186 | func put64be(b []byte, x uint64) []byte { binary.BigEndian.PutUint64(b, x); return b[8:] } |
nothing calls this directly
no outgoing calls
no test coverage detected
searching dependent graphs…