proj: Implement mmap, munmap
This commit is contained in:
@@ -10,7 +10,8 @@ import re
|
||||
|
||||
type Pointer = int
|
||||
type PointerTo[T] = tuple[Pointer, T]
|
||||
type Flags = tuple[Pointer, list[str]]
|
||||
type Constant = tuple[int, str]
|
||||
type Flags = tuple[int, list[str]]
|
||||
StructTimeSpec = TypedDict('StructTimeSpec', {'tv_sec': int, 'tv_nsec': int})
|
||||
StructSigAction = TypedDict('StructSigAction', {'sa_flags': Flags, 'sa_handler': NotRequired[Pointer], 'sa_sigaction': NotRequired[Pointer], 'sa_mask': list[str]})
|
||||
|
||||
@@ -234,14 +235,14 @@ class Handler(StreamRequestHandler):
|
||||
def after_close(self, fildes: int,
|
||||
ret_value: int, errno: str = None) -> None:
|
||||
raise NotImplementedError()
|
||||
def before_sigaction(self, sig: int, act: PointerTo[StructSigAction], oact_ptr: Pointer) -> str:
|
||||
def before_sigaction(self, sig: Constant, act: PointerTo[StructSigAction], oact_ptr: Pointer) -> str:
|
||||
raise NotImplementedError()
|
||||
def after_sigaction(self, sig: int, act: PointerTo[StructSigAction], oact_ptr: Pointer,
|
||||
def after_sigaction(self, sig: Constant, act: PointerTo[StructSigAction], oact_ptr: Pointer,
|
||||
ret_value: int, errno: str = None, oact: StructSigAction = None) -> None:
|
||||
raise NotImplementedError()
|
||||
def before_sem_init(self, sem: int, pshared: int, value: int) -> str:
|
||||
def before_sem_init(self, sem: Pointer, pshared: int, value: int) -> str:
|
||||
raise NotImplementedError()
|
||||
def after_sem_init(self, sem: int, pshared: int, value: int,
|
||||
def after_sem_init(self, sem: Pointer, pshared: int, value: int,
|
||||
ret_value: int, errno: str = None) -> None:
|
||||
raise NotImplementedError()
|
||||
def before_sem_open(self, name: str, oflag: Flags, mode: Optional[int], value: Optional[int]) -> str:
|
||||
@@ -299,6 +300,16 @@ class Handler(StreamRequestHandler):
|
||||
def after_shm_unlink(self, name: PointerTo[bytes],
|
||||
ret_value: int, errno: str = None) -> None:
|
||||
raise NotImplementedError()
|
||||
def before_mmap(self, addr: Pointer, len_value: int, prot: Flags, flags: Flags, fildes: int, off: int) -> str:
|
||||
raise NotImplementedError()
|
||||
def after_mmap(self, addr: Pointer, len_value: int, prot: Flags, flags: Flags, fildes: int, off: int,
|
||||
ret_value: Pointer, errno: str = None) -> None:
|
||||
raise NotImplementedError()
|
||||
def before_munmap(self, addr: Pointer, len_value: int) -> str:
|
||||
raise NotImplementedError()
|
||||
def after_munmap(self, addr: Pointer, len_value: int,
|
||||
ret_value: int, errno: str = None) -> None:
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
class MemoryAllocationTester(Handler):
|
||||
|
||||
Reference in New Issue
Block a user