Skip to content

Commit 3eac69e

Browse files
committed
clean up dup const, we need a better way to share file flag
1 parent a6ed20b commit 3eac69e

File tree

3 files changed

+143
-230
lines changed

3 files changed

+143
-230
lines changed

qiling/os/posix/const.py

Lines changed: 113 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -403,92 +403,130 @@
403403
"SO_SNDTIMEO_NEW" : 0x0043,
404404
}
405405

406-
macos_x86_open_flags = {
407-
"O_RDONLY" : 0x0000,
408-
"O_WRONLY" : 0x0001,
409-
"O_RDWR" : 0x0002,
410-
"O_NONBLOCK" : 0x0004,
411-
"O_APPEND" : 0x0008,
412-
"O_ASYNC" : 0x0040,
413-
"O_SYNC" : 0x0080,
414-
"O_NOFOLLOW" : 0x0100,
415-
"O_CREAT" : 0x0200,
416-
"O_TRUNC" : 0x0400,
417-
"O_EXCL" : 0x0800,
418-
"O_NOCTTY" : 0x20000,
419-
"O_DIRECTORY": 0x100000
420-
}
406+
open_flags_name = [
407+
"O_RDONLY",
408+
"O_WRONLY",
409+
"O_RDWR",
410+
"O_NONBLOCK",
411+
"O_APPEND",
412+
"O_ASYNC",
413+
"O_SYNC",
414+
"O_NOFOLLOW",
415+
"O_CREAT",
416+
"O_TRUNC",
417+
"O_EXCL",
418+
"O_NOCTTY",
419+
"O_DIRECTORY",
420+
"O_BINARY",
421+
"O_LARGEFILE"
422+
]
421423

422-
macos_arm64_open_flags = {
423-
"O_RDONLY" : 0x0000,
424-
"O_WRONLY" : 0x0001,
425-
"O_RDWR" : 0x0002,
426-
"O_NONBLOCK" : 0x0004,
427-
"O_APPEND" : 0x0008,
428-
"O_ASYNC" : 0x0040,
429-
"O_SYNC" : 0x0080,
430-
"O_NOFOLLOW" : 0x0100,
431-
"O_CREAT" : 0x0200,
432-
"O_TRUNC" : 0x0400,
433-
"O_EXCL" : 0x0800,
434-
"O_NOCTTY" : 0x20000,
435-
"O_DIRECTORY": 0x100000
424+
macos_x86_open_flags = {
425+
"O_RDONLY": 0x0,
426+
"O_WRONLY": 0x1,
427+
"O_RDWR": 0x2,
428+
"O_NONBLOCK": 0x4,
429+
"O_APPEND": 0x8,
430+
"O_ASYNC": 0x40,
431+
"O_SYNC": 0x80,
432+
"O_NOFOLLOW": 0x100,
433+
"O_CREAT": 0x200,
434+
"O_TRUNC": 0x400,
435+
"O_EXCL": 0x800,
436+
"O_NOCTTY": 0x20000,
437+
"O_DIRECTORY": 0x100000,
438+
"O_BINARY": None,
439+
'O_LARGEFILE': None
436440
}
437441

438442
linux_x86_open_flags = {
439-
'O_RDONLY' : 0o000000000,
440-
'O_WRONLY' : 0o000000001,
441-
'O_RDWR' : 0o000000002,
442-
'O_CREAT' : 0o000000100,
443-
'O_EXCL' : 0o000000200,
444-
'O_NOCTTY' : 0o000000400,
445-
'O_TRUNC' : 0o000001000,
446-
'O_APPEND' : 0o000002000,
447-
'O_NONBLOCK' : 0o000004000,
448-
'O_DSYNC' : 0o000010000,
449-
'FASYNC' : 0o000020000,
450-
'O_DIRECT' : 0o000040000,
451-
'O_LARGEFILE' : 0o000100000,
452-
'O_DIRECTORY' : 0o000200000,
453-
'O_NOFOLLOW' : 0o000400000,
454-
'O_NOATIME' : 0o001000000,
455-
'O_CLOEXEC' : 0o002000000,
456-
'O_SYNC' : 0o004000000 | 0o000010000, # O_DSYNC
457-
'O_PATH' : 0o010000000
443+
'O_RDONLY': 0x0,
444+
'O_WRONLY': 0x1,
445+
'O_RDWR': 0x2,
446+
'O_NONBLOCK': 0x800,
447+
'O_APPEND': 0x400,
448+
'O_ASYNC': 0x2000,
449+
'O_SYNC': 0x101000,
450+
'O_NOFOLLOW': 0x20000,
451+
'O_CREAT': 0x40,
452+
'O_TRUNC': 0x200,
453+
'O_EXCL': 0x80,
454+
'O_NOCTTY': 0x100,
455+
'O_DIRECTORY': 0x10000,
456+
'O_BINARY': None,
457+
'O_LARGEFILE': 0x0
458458
}
459459

460+
linux_arm_open_flags = {
461+
'O_RDONLY': 0x0,
462+
'O_WRONLY': 0x1,
463+
'O_RDWR': 0x2,
464+
'O_NONBLOCK': 0x800,
465+
'O_APPEND': 0x400,
466+
'O_ASYNC': 0x2000,
467+
'O_SYNC': 0x101000,
468+
'O_NOFOLLOW': 0x8000,
469+
'O_CREAT': 0x40,
470+
'O_TRUNC': 0x200,
471+
'O_EXCL': 0x80,
472+
'O_NOCTTY': 0x100,
473+
'O_DIRECTORY': 0x4000,
474+
'O_BINARY': None,
475+
'O_LARGEFILE': 0x20000
476+
}
460477

461478
linux_mips_open_flags = {
462-
'O_RDONLY' : 0x0,
463-
'O_WRONLY' : 0x1,
464-
'O_RDWR' : 0x2,
465-
'O_APPEND' : 0x8,
466-
'O_NONBLOCK' : 0x80,
467-
'O_CREAT' : 0x100,
468-
'O_TRUNC' : 0x200,
469-
'O_EXCL' : 0x400,
470-
'O_NOCTTY' : 0x800,
471-
'O_ASYNC' : 0x1000,
472-
'O_SYNC' : 0x4000,
473-
'O_NOFOLLOW' : 0x20000,
474-
'O_DIRECTORY': 0x100000,
479+
'O_RDONLY': 0x0,
480+
'O_WRONLY': 0x1,
481+
'O_RDWR': 0x2,
482+
'O_NONBLOCK': 0x80,
483+
'O_APPEND': 0x8,
484+
'O_ASYNC': 0x1000,
485+
'O_SYNC': 0x4010,
486+
'O_NOFOLLOW': 0x20000,
487+
'O_CREAT': 0x100,
488+
'O_TRUNC': 0x200,
489+
'O_EXCL': 0x400,
490+
'O_NOCTTY': 0x800,
491+
'O_DIRECTORY': 0x10000,
492+
'O_BINARY' : None,
493+
'O_LARGEFILE': 0x2000
475494
}
476495

496+
freebsd_x86_open_flags = {
497+
'O_RDONLY': 0x0,
498+
'O_WRONLY': 0x1,
499+
'O_RDWR': 0x2,
500+
'O_NONBLOCK': 0x4,
501+
'O_APPEND': 0x8,
502+
'O_ASYNC': 0x40,
503+
'O_SYNC': 0x80,
504+
'O_NOFOLLOW': 0x100,
505+
'O_CREAT': 0x200,
506+
'O_TRUNC': 0x400,
507+
'O_EXCL': 0x800,
508+
'O_NOCTTY': 0x8000,
509+
'O_DIRECTORY': 0x20000,
510+
'O_BINARY' : None,
511+
'O_LARGEFILE': None
512+
}
477513

478-
linux_arm_open_flags = {
479-
'O_RDONLY' : 0x0,
480-
'O_WRONLY' : 0x1,
481-
'O_RDWR' : 0x2,
482-
'O_CREAT' : 0x40,
483-
'O_EXCL' : 0x80,
484-
'O_NOCTTY' : 0x100,
485-
'O_TRUNC' : 0x200,
486-
'O_APPEND' : 0x400,
487-
'O_NONBLOCK' : 0x800,
488-
'O_ASYNC' : 0x2000,
489-
'O_DIRECTORY': 0x10000,
490-
'O_NOFOLLOW' : 0x20000,
491-
'O_SYNC' : 0x101000,
514+
qnx_arm64_open_flags = {
515+
'O_RDONLY' : 0x00000,
516+
'O_WRONLY' : 0x00001,
517+
'O_RDWR' : 0x00002,
518+
'O_APPEND' : 0x00008,
519+
'O_SYNC' : 0x00020,
520+
'O_NONBLOCK' : 0x00080,
521+
'O_CREAT' : 0x00100,
522+
'O_TRUNC' : 0x00200,
523+
'O_EXCL' : 0x00400,
524+
'O_NOCTTY' : 0x00800,
525+
'O_LARGEFILE' : 0x08000,
526+
'O_ASYNC' : 0x10000,
527+
'O_NOFOLLOW' : None,
528+
'O_DIRECTORY' : None,
529+
'O_BINARY' : None
492530
}
493531

494532
# fcntl flags

0 commit comments

Comments
 (0)