@@ -0,0 +1,1033 @@
+%22%22%22%0AA driver for Ciena SAOS carrier ethernet devices%0A%22%22%22%0Aimport re%0Afrom Exscript.protocols.drivers.driver import Driver%0A%0A_user_re = %5Bre.compile(r'%5B%5E:%5D* login: ?$', re.I)%5D%0A_password_re = %5Bre.compile(r'Password: ?$')%5D%0A_prompt_re = %5Bre.compile(r'%5B%5Cr%5Cn%5D%5B%5C-%5Cw+%5C.:/%5D+%5B%3E#%5D ?$')%5D%0A_error_re = %5Bre.compile(r'SHELL PARSER FAILURE'),%0A             re.compile(r'invalid input', re.I),%0A             re.compile(r'(?:incomplete%7Cambiguous) command', re.I),%0A             re.compile(r'connection timed out', re.I),%0A             re.compile(r'%5B%5E%5Cr%5Cn%5D+ not found', re.I)%5D%0A%0A%0Aclass CienaSAOSDriver(Driver):%0A%0A    def __init__(self):%0A        Driver.__init__(self, 'cienasaos')%0A        self.user_re = _user_re%0A        self.password_re = _password_re%0A        self.prompt_re = _prompt_re%0A        self.error_re = _error_re%0A%0A    def check_head_for_os(self, string):%0A        if 'SAOS is True Carrier Ethernet TM software' in string:%0A            return 90%0A        return 0%0A%0A    def init_terminal(self, conn):%0A        conn.execute('system shell session set more off')%0A

Add a driver for Ciena SAOS devices