Statistics
| Branch: | Tag: | Revision:

root / ncclient / transport / errors.py @ b0fe10f3

History | View | Annotate | Download (1.3 kB)

1 b0fe10f3 Shikhar Bhushan
# Copyright 2009 Shikhar Bhushan
2 b0fe10f3 Shikhar Bhushan
#
3 b0fe10f3 Shikhar Bhushan
# Licensed under the Apache License, Version 2.0 (the "License");
4 b0fe10f3 Shikhar Bhushan
# you may not use this file except in compliance with the License.
5 b0fe10f3 Shikhar Bhushan
# You may obtain a copy of the License at
6 b0fe10f3 Shikhar Bhushan
#
7 b0fe10f3 Shikhar Bhushan
#    http://www.apache.org/licenses/LICENSE-2.0
8 b0fe10f3 Shikhar Bhushan
#
9 b0fe10f3 Shikhar Bhushan
# Unless required by applicable law or agreed to in writing, software
10 b0fe10f3 Shikhar Bhushan
# distributed under the License is distributed on an "AS IS" BASIS,
11 b0fe10f3 Shikhar Bhushan
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 b0fe10f3 Shikhar Bhushan
# See the License for the specific language governing permissions and
13 b0fe10f3 Shikhar Bhushan
# limitations under the License.
14 b0fe10f3 Shikhar Bhushan
15 b0fe10f3 Shikhar Bhushan
"TODO: docstrings"
16 b0fe10f3 Shikhar Bhushan
17 b0fe10f3 Shikhar Bhushan
from ncclient import NCClientError
18 b0fe10f3 Shikhar Bhushan
19 b0fe10f3 Shikhar Bhushan
class TransportError(NCClientError):
20 b0fe10f3 Shikhar Bhushan
    pass
21 b0fe10f3 Shikhar Bhushan
22 b0fe10f3 Shikhar Bhushan
class AuthenticationError(TransportError):
23 b0fe10f3 Shikhar Bhushan
    pass
24 b0fe10f3 Shikhar Bhushan
25 b0fe10f3 Shikhar Bhushan
class SessionCloseError(TransportError):
26 b0fe10f3 Shikhar Bhushan
    
27 b0fe10f3 Shikhar Bhushan
    def __init__(self, in_buf, out_buf=None):
28 b0fe10f3 Shikhar Bhushan
        msg = 'Unexpected session close.'
29 b0fe10f3 Shikhar Bhushan
        if in_buf:
30 b0fe10f3 Shikhar Bhushan
            msg += ' IN_BUFFER: {%s}' % in_buf
31 b0fe10f3 Shikhar Bhushan
        if out_buf:
32 b0fe10f3 Shikhar Bhushan
            msg += ' OUT_BUFFER: {%s}' % out_buf
33 b0fe10f3 Shikhar Bhushan
        SSHError.__init__(self, msg)
34 b0fe10f3 Shikhar Bhushan
35 b0fe10f3 Shikhar Bhushan
class SSHError(TransportError):
36 b0fe10f3 Shikhar Bhushan
    pass
37 b0fe10f3 Shikhar Bhushan
38 b0fe10f3 Shikhar Bhushan
class SSHUnknownHostError(SSHError):
39 b0fe10f3 Shikhar Bhushan
    
40 b0fe10f3 Shikhar Bhushan
    def __init__(self, hostname, key):
41 b0fe10f3 Shikhar Bhushan
        from binascii import hexlify
42 b0fe10f3 Shikhar Bhushan
        SSHError(self, 'Unknown host key [%s] for [%s]'
43 b0fe10f3 Shikhar Bhushan
                 % (hexlify(key.get_fingerprint()), hostname))
44 b0fe10f3 Shikhar Bhushan
        self.hostname = hostname