Source code for plaso.helpers.macos.darwin

"""MacOS Darwin helpers."""


[docs] class DarwinSystemErrorHelper: """Darwin system error helper. Also see: https://github.com/apple/darwin-xnu/blob/main/bsd/sys/errno.h """ _ERROR_CODES = { -1: "Restart syscall", -2: "Don't modify regs, just return", -5: "Restart lookup under heavy vnode pressure/recycling", -6: "Red drive open", -7: "Keep looking", -8: "Data less", 0: "Success", 1: "Operation not permitted", 2: "No such file or directory", 3: "No such process", 4: "Interrupted system call", 5: "Input/Output error", 6: "Device not configured", 7: "Argument list too long", 8: "Exec format error", 9: "Bad file descriptor", 10: "No child processes", 11: "Resource deadlock avoided", 12: "Cannot allocate memory", 13: "Permission denied", 14: "Bad address", 15: "Block device required", 16: "Device / Resource busy", 17: "File exists", 18: "Cross-device link", 19: "Operation not supported by device", 20: "Not a directory", 21: "Is a directory", 22: "Invalid argument", 23: "Too many open files in system", 24: "Too many open files", 25: "Inappropriate ioctl for devices", 26: "Text file busy", 27: "File too large", 28: "No space left on device", 29: "Illegal seek", 30: "Read-only filesystem", 31: "Too many links", 32: "Broken pipe", 33: "Numerical argument out of domain", 34: "Result too large", 35: "Resource temporarily unavailable, operation would block", 36: "Operation now in progress", 37: "Operation already in progress", 38: "Socket operation on non-socket", 39: "Destination address required", 40: "Message too long", 41: "Protocol wrong type for socket", 42: "Protocol not available", 43: "Protocol not supported", 44: "Socket type not supported", 45: "Operation not supported, Operation not supported on socket", 46: "Protocol family not supported", 47: "Address family not supported by protocol family", 48: "Address already in use", 49: "Can't assign requested address", 50: "Network is down", 51: "Network is unreachable", 52: "Network dropped connection on reset", 53: "Software caused connection abort", 54: "Connection reset by peer", 55: "No buffer space available", 56: "Socket is already connected", 57: "Socket is not connected", 58: "Can't send after socket shutdown", 59: "Too many references: can't splice", 60: "Operation timed out", 61: "Connection refused", 62: "Too many levels of symbolic links", 63: "File name too long", 64: "Host is down", 65: "No route to host", 66: "Directory not empty", 67: "Too many processes", 68: "Too many users", 69: "Disc quota exceeded", 70: "Stale NFS file handle", 71: "Too many levels of remote in path", 72: "RPC struct is bad", 73: "RPC version wrong", 74: "RPC prog. not avail", 75: "Program version wrong", 76: "Bad procedure for program", 77: "No locks available", 78: "Function not implemented", 79: "Inappropriate file type or format", 80: "Authentication error", 81: "Need authenticator", 82: "Device power is off", 83: "Device error, e.g. paper out", 84: "Value too large to be stored in data type", 85: "Bad executable", 86: "Bad CPU type in executable", 87: "Shared library version mismatch", 88: "Malformed Macho file", 89: "Operation canceled", 90: "Identifier removed", 91: "No message of desired type", 92: "Illegal byte sequence", 93: "Attribute not found", 94: "Bad message", 95: "Reserved", 96: "No message available on STREAM", 97: "Reserved", 98: "No STREAM resources", 99: "Not a STREAM", 100: "Protocol error", 101: "STREAM ioctl timeout", 102: "Operation not supported on socket", 103: "No such policy registered", 104: "State not recoverable", 105: "Previous owner died", 106: "Interface output queue is full, Must be equal largest errno", }
[docs] @classmethod def GetDescription(cls, error_code): """Retrieves the description of a specific error code. Args: error_code (int): error code. Returns: str: description of the error. """ return cls._ERROR_CODES.get(error_code, f"UNKNOWN: {error_code:d}")