diff options
| author | Peter LaFosse <peter@vector35.com> | 2017-09-21 16:27:04 -0400 |
|---|---|---|
| committer | Peter LaFosse <peter@vector35.com> | 2017-09-21 16:27:04 -0400 |
| commit | eecc63abf9c528ab209d56fef62cb3be7518f4e2 (patch) | |
| tree | 7cf300f35299cce2b38748b57f3a71f8de61bc99 /python/binaryview.py | |
| parent | 652b830e5cb46ed2677e7639462f597b8e5f47c4 (diff) | |
Add segment permission properties
Diffstat (limited to 'python/binaryview.py')
| -rw-r--r-- | python/binaryview.py | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/python/binaryview.py b/python/binaryview.py index 19af6264..9304d412 100644 --- a/python/binaryview.py +++ b/python/binaryview.py @@ -413,6 +413,18 @@ class Segment(object): self.flags = flags @property + def executable(self): + return (self.flags & SegmentFlag.SegmentExecutable) != 0 + + @property + def writable(self): + return (self.flags & SegmentFlag.SegmentWritable) != 0 + + @property + def readable(self): + return (self.flags & SegmentFlag.SegmentReadable) != 0 + + @property def end(self): return self.start + self.length @@ -421,9 +433,9 @@ class Segment(object): def __repr__(self): return "<segment: %#x-%#x, %s%s%s>" % (self.start, self.end, - "r" if (self.flags & SegmentFlag.SegmentReadable) != 0 else "-", - "w" if (self.flags & SegmentFlag.SegmentWritable) != 0 else "-", - "x" if (self.flags & SegmentFlag.SegmentExecutable) != 0 else "-") + "r" if self.readable else "-", + "w" if self.writable else "-", + "x" if self.executable else "-") class Section(object): |
