Documentation ¶
Index ¶
- Constants
- Variables
- func AddDependency(start, length uint64, addr prog.Arg, ctx *Context)
- func GenDefaultArg(syzType prog.Type, ctx *Context) prog.Arg
- func GenDefaultStraceType(syzType prog.Type) strace_types.Type
- func GetFixedFlag(ctx *Context) uint64
- func GetProgs(ctxs []*Context) []*prog.Prog
- func IdentifyBpfInsn(ctx *Context) int
- func IdentifyIfconfUnion(ctx *Context) int
- func IdentifyIfrIfruUnion(ctx *Context) int
- func IdentifySockaddrNetlinkUnion(ctx *Context) int
- func IdentifySockaddrStorageUnion(ctx *Context) int
- func IdentifyUnionType(ctx *Context, typeName string) int
- func NewRCache() returnCache
- func ParseAddr(length uint64, syzType prog.Type, straceType strace_types.Type, ctx *Context) (prog.Arg, uint64)
- func ParseFd(syzType prog.Type, straceType strace_types.Type, ctx *Context) prog.Arg
- func ParseFlags(syzType prog.Type, straceType strace_types.Type, ctx *Context, mapFlag bool) prog.Arg
- func ParseInnerCall(syzType prog.Type, straceType *strace_types.Call, ctx *Context) prog.Arg
- func ParseLength(straceType strace_types.Type, ctx *Context) uint64
- func ParseMadvise(madvise *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMemoryCall(ctx *Context) *prog.Call
- func ParseMlock(mlock *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMmap(mmap *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMprotect(mprotect *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMremap(mremap *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMsync(msync *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMunlock(munlock *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseMunmap(munmap *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func ParseShmat(shmat *prog.Syscall, syscall *strace_types.Syscall, ctx *Context) *prog.Call
- func Parse_ArrayType(syzType *prog.ArrayType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_BufferType(syzType *prog.BufferType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_ConstType(syzType prog.Type, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_ProcType(syzType *prog.ProcType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_PtrType(syzType *prog.PtrType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_ResourceType(syzType *prog.ResourceType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_StructType(syzType *prog.StructType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_UnionType(syzType *prog.UnionType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Parse_VmaType(syzType *prog.VmaType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
- func Preprocess(ctx *Context)
- func PreprocessStruct(syzType *prog.StructType, straceType strace_types.Type, ctx *Context) strace_types.Type
- func Preprocess_Accept(ctx *Context)
- func Preprocess_Bind(ctx *Context)
- func Preprocess_Bpf(ctx *Context)
- func Preprocess_Connect(ctx *Context)
- func Preprocess_Fcntl(ctx *Context)
- func Preprocess_Getsockname(ctx *Context)
- func Preprocess_Getsockopt(ctx *Context)
- func Preprocess_Ioctl(ctx *Context)
- func Preprocess_Mknod(ctx *Context)
- func Preprocess_ModifyLdt(ctx *Context)
- func Preprocess_Open(ctx *Context)
- func Preprocess_Openat(ctx *Context)
- func Preprocess_Prctl(ctx *Context)
- func Preprocess_Recvfrom(ctx *Context)
- func Preprocess_Sendto(ctx *Context)
- func Preprocess_Setsockopt(ctx *Context)
- func Preprocess_Shmctl(ctx *Context)
- func Preprocess_Socket(ctx *Context)
- func SanitizeFilename(filename string) string
- type Context
- type PreprocessHook
- type ResourceDescription
Constants ¶
View Source
const ( MapFixed = "MAP_FIXED" RemapFixed = "MREMAP_FIXED" )
Variables ¶
View Source
var PreprocessMap = map[string]PreprocessHook{ "bpf": Preprocess_Bpf, "accept": Preprocess_Accept, "accept4": Preprocess_Accept, "bind": Preprocess_Bind, "connect": Preprocess_Connect, "fcntl": Preprocess_Fcntl, "getsockname": Preprocess_Getsockname, "getsockopt": Preprocess_Getsockopt, "ioctl": Preprocess_Ioctl, "open": Preprocess_Open, "prctl": Preprocess_Prctl, "recvfrom": Preprocess_Recvfrom, "mknod": Preprocess_Mknod, "modify_ldt": Preprocess_ModifyLdt, "openat": Preprocess_Openat, "sendto": Preprocess_Sendto, "setsockopt": Preprocess_Setsockopt, "shmctl": Preprocess_Shmctl, "socket": Preprocess_Socket, }
View Source
var SpecialStruct_Map = map[string]structHandler{
"bpf_framed_program": bpfFramedProgramHandler,
}
Functions ¶
func GenDefaultStraceType ¶
func GenDefaultStraceType(syzType prog.Type) strace_types.Type
func GetFixedFlag ¶
func IdentifyBpfInsn ¶
func IdentifyIfconfUnion ¶
func IdentifyIfrIfruUnion ¶
func IdentifyUnionType ¶
func ParseFlags ¶
func ParseInnerCall ¶
func ParseLength ¶
func ParseLength(straceType strace_types.Type, ctx *Context) uint64
func ParseMadvise ¶
func ParseMemoryCall ¶
func ParseMlock ¶
func ParseMprotect ¶
func ParseMremap ¶
func ParseMsync ¶
func ParseMunlock ¶
func ParseMunmap ¶
func ParseShmat ¶
func Parse_ArrayType ¶
func Parse_BufferType ¶
func Parse_BufferType(syzType *prog.BufferType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
func Parse_ConstType ¶
func Parse_ProcType ¶
func Parse_PtrType ¶
func Parse_ResourceType ¶
func Parse_ResourceType(syzType *prog.ResourceType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
func Parse_StructType ¶
func Parse_StructType(syzType *prog.StructType, straceType strace_types.Type, ctx *Context) (prog.Arg, error)
func Parse_UnionType ¶
func Parse_VmaType ¶
func Preprocess ¶
func Preprocess(ctx *Context)
func PreprocessStruct ¶
func PreprocessStruct(syzType *prog.StructType, straceType strace_types.Type, ctx *Context) strace_types.Type
func Preprocess_Accept ¶
func Preprocess_Accept(ctx *Context)
func Preprocess_Bind ¶
func Preprocess_Bind(ctx *Context)
func Preprocess_Bpf ¶
func Preprocess_Bpf(ctx *Context)
func Preprocess_Connect ¶
func Preprocess_Connect(ctx *Context)
func Preprocess_Fcntl ¶
func Preprocess_Fcntl(ctx *Context)
func Preprocess_Getsockname ¶
func Preprocess_Getsockname(ctx *Context)
func Preprocess_Getsockopt ¶
func Preprocess_Getsockopt(ctx *Context)
func Preprocess_Ioctl ¶
func Preprocess_Ioctl(ctx *Context)
func Preprocess_Mknod ¶
func Preprocess_Mknod(ctx *Context)
func Preprocess_ModifyLdt ¶
func Preprocess_ModifyLdt(ctx *Context)
func Preprocess_Open ¶
func Preprocess_Open(ctx *Context)
func Preprocess_Openat ¶
func Preprocess_Openat(ctx *Context)
func Preprocess_Prctl ¶
func Preprocess_Prctl(ctx *Context)
func Preprocess_Recvfrom ¶
func Preprocess_Recvfrom(ctx *Context)
func Preprocess_Sendto ¶
func Preprocess_Sendto(ctx *Context)
func Preprocess_Setsockopt ¶
func Preprocess_Setsockopt(ctx *Context)
func Preprocess_Shmctl ¶
func Preprocess_Shmctl(ctx *Context)
func Preprocess_Socket ¶
func Preprocess_Socket(ctx *Context)
func SanitizeFilename ¶
Types ¶
type Context ¶
type Context struct { Cache returnCache Prog *prog.Prog CurrentStraceCall *strace_types.Syscall CurrentSyzCall *prog.Call CurrentStraceArg strace_types.Type State *tracker.State Target *prog.Target CallToCover map[*prog.Call][]uint64 DependsOn map[*prog.Call]map[*prog.Call]int }
func NewContext ¶
func (*Context) FillOutMemory ¶
func (*Context) GenerateSeeds ¶
type PreprocessHook ¶
type PreprocessHook func(ctx *Context)
type ResourceDescription ¶
Click to show internal directories.
Click to hide internal directories.