Dmitry Vyukov
588a542b2a
sys: add string flags
...
Allow to define string flags in txt descriptions. E.g.:
filesystem = "ext2", "ext3", "ext4"
and then use it in string type:
ptr[in, string[filesystem]]
2016-11-11 14:33:37 -08:00
Dmitry Vyukov
f085c198ba
sys: replace FileoffType with IntType{Kind: IntFileoff}
...
FileoffType is effectively an int, no need for a separate type.
Also remove fd option from fileoff as it is unused and use story is unclear.
2016-11-11 14:32:38 -08:00
Dmitry Vyukov
8b731ed4b7
sys: replace FilenameType with BufferType{Kind: BufferFilename}
...
FilenameType is effectively a buffer, there is no need for a separate type.
2016-11-11 14:32:19 -08:00
Dmitry Vyukov
d3a93e8370
sys: attach Dir to all types
...
Dir is a static info, so we don't need to compute, propagate and
attach it in prog whenever we generate/change programs.
Attach Dir to all types.
2016-11-11 14:27:54 -08:00
Dmitry Vyukov
959ec07095
sys: always use pointers to types
...
Currently we store most types by value in sys.Type.
This is somewhat counter-intuitive for C++ programmers,
because one can't easily update the type object.
Store pointers to type objects for all types.
It also makes it easier to update types, e.g. adding paddings.
2016-11-11 14:25:13 -08:00
Andrey Konovalov
c99cbdbe58
Emit BufferBlob for array[int8]
2016-10-04 18:49:57 +02:00
Dmitry Vyukov
852e3d2eae
sys: support recursive structs
...
A struct can have a pointer to itself directly or indirectly.
Currently it leads to inifinite recursion when generating descriptions.
Fix this.
2016-09-05 12:49:47 +02:00
Dmitry Vyukov
7690667267
sys: specify resources in text descriptions
...
Currently to add a new resource one needs to modify multiple source files,
which complicates descirption of new system calls.
Move resource descriptions from source code to text desciptions.
2016-08-27 18:27:50 +02:00
Baozeng Ding
7db2edcb33
sys/sysgen/prog: support ranged int
...
This commit supports inclusive ranged int, like foo int32[-10~10], which will
generate random integer between -10 and 10. In future we will support more than
one range, like int32[0, -5~10, 50, 100~200]
2016-08-10 13:43:15 +08:00
Dmitry Vyukov
1d77072874
prog: don't cache static priorities
...
This is not computed very frequently, but wastes memory.
2016-01-19 12:26:27 +01:00
Dmitry Vyukov
ddcd0929e3
prog: give more priority to generic socket syscalls
2015-12-30 18:24:26 +01:00
Dmitry Vyukov
28b3d1e1ab
sys: add sctp support
2015-12-30 13:04:00 +01:00
Dmitry Vyukov
e6529b30ec
sys: add union type
2015-12-29 15:00:57 +01:00
Dmitry Vyukov
4d3db6d4c8
host: detect unsupported syscalls
...
Also detect transitively unsupported syscalls,
that is, syscalls for which all syscalls that can create
input arguments are disabled.
2015-12-27 12:20:00 +01:00
Dmitry Vyukov
c4b809f85f
sys: add support for PF_ALG
2015-12-17 14:38:46 +01:00
Dmitry Vyukov
6892001bbc
add tty-related ioctl's
2015-11-16 19:14:05 +01:00
Dmitry Vyukov
cd51d417c6
allow to not specify enabled syscalls in prog.BuildChoiceTable
2015-10-16 22:10:51 +02:00
Dmitry Vyukov
f8f416fb8f
preliminary description of kdbus syscalls
2015-10-16 18:16:10 +02:00
Dmitry Vyukov
8d0aa4f7c0
improvements for kdbus
2015-10-15 17:59:01 +02:00
Dmitry Vyukov
c9b915608d
initial support for call priorities
2015-10-14 16:55:09 +02:00