| 82 | |
| 83 | |
| 84 | class SMBError: |
| 85 | |
| 86 | def __init__(self): |
| 87 | self.reset() |
| 88 | |
| 89 | def reset(self): |
| 90 | self.internal_value = 0 |
| 91 | self.is_ntstatus = True |
| 92 | |
| 93 | def __str__(self): |
| 94 | if self.is_ntstatus: |
| 95 | return 'NTSTATUS=0x%08X' % self.internal_value |
| 96 | else: |
| 97 | return 'ErrorClass=0x%02X ErrorCode=0x%04X' % ( self.internal_value >> 24, self.internal_value & 0xFFFF ) |
| 98 | |
| 99 | @property |
| 100 | def hasError(self): |
| 101 | return self.internal_value != 0 |
| 102 | |
| 103 | |
| 104 | class SMBMessage: |