diff options
Diffstat (limited to 'pym')
-rw-r--r-- | pym/portage/exception.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pym/portage/exception.py b/pym/portage/exception.py index 9564af98a..b0f9ad8eb 100644 --- a/pym/portage/exception.py +++ b/pym/portage/exception.py @@ -80,6 +80,20 @@ class TryAgain(PortageException): from errno import EAGAIN as errno """Try again""" +class TimeoutException(PortageException): + from errno import ETIME as errno + +class AlarmSignal(TimeoutException): + def __init__(self, value, signum=None, frame=None): + TimeoutException.__init__(self, value) + self.signum = signum + self.frame = frame + + @classmethod + def signal_handler(cls, signum, frame): + raise AlarmSignal("alarm signal", + signum=signum, frame=frame) + class ReadOnlyFileSystem(PortageException): """Read-only file system""" |