IM2000-Recipient-Notification-Agent-Query-Protocol DEFINITIONS ::= BEGIN -- Data Types -- UTF8String ::= [UNIVERSAL 22] IMPLICIT OCTET STRING MessageIdentifier ::= OCTET STRING (SIZE(16)) PortNumber ::= INTEGER (0..65535) IPAddress ::= CHOICE { Version4 [0] IMPLICIT OCTET STRING (SIZE(4)), Version6 [1] IMPLICIT OCTET STRING (SIZE(16)), } DomainName ::= SEQUENCE OF UTF8String MailBox ::= SEQUENCE { localpart [0] IMPLICIT UTF8String, domain [1] IMPLICIT DomainName } IPAddressAndPort ::= SEQUENCE { address [0] IMPLICIT IPAddress, port [1] IMPLICIT PortNumber } ServiceLocation ::= CHOICE { literals [0] IMPLICIT SEQUENCE OF IPAddressAndPort, domain [1] IMPLICIT DomainName } ClientLocation ::= SEQUENCE { address [0] IMPLICIT IPAddress, port [1] IMPLICIT PortNumber, domain [2] IMPLICIT DomainName OPTIONAL } ResponseStatus ::= ENUMERATED { noerror (0), errormalformedpdu (1), errorcommandtimeout (2), errornotauthenticated (3), errorunexpectedcommand (4), errorserviceshutdown (5), errorinternalproblem (6), errornotauthenticated (7) } Notification ::= SEQUENCE { storeclear [0] IMPLICIT ServiceLocation, storessl [1] IMPLICIT ServiceLocation OPTIONAL, recipient [2] IMPLICIT MailBox, identifier [3] IMPLICIT MessageIdentifier, sender [4] IMPLICIT UTF8String, size [5] IMPLICIT INTEGER (0..MAX) OPTIONAL } NotificationAndLocalData ::= SEQUENCE { notification [0] IMPLICIT Notification, submitter [1] IMPLICIT ClientLocation, date [2] IMPLICIT UnsignedLargeInteger } -- Command PDUs CommandAuthenticate ::= SEQUENCE { account [0] IMPLICIT UTF8String, password [1] IMPLICIT UTF8String } CommandRetrieveAndClear ::= SEQUENCE {} Command ::= SEQUENCE { commanddata [0] IMPLICIT CHOICE { [0] IMPLICIT CommandAuthenticate, [1] IMPLICIT CommandRetrieveAndClear } } -- Response PDUs ResponseNull ::= SEQUENCE {} ResponseAuthenticate ::= SEQUENCE {} ResponseRetrieveAndClear ::= SEQUENCE { notifications [0] IMPLICIT SEQUENCE OF NotificationAndLocalData } Response ::= SEQUENCE { forceabort [0] IMPLICIT BOOLEAN, status [1] IMPLICIT ResponseStatus, responsedata [2] IMPLICIT CHOICE { [0] IMPLICIT ResponseNull, [1] IMPLICIT ResponseAuthenticate } } -- Main PDU Definition RNAQPDU ::= CHOICE { [1] IMPLICIT Command, [2] IMPLICIT Response } -- (c) Copyright 2004-2004 Jonathan de Boyne Pollard. All rights reserved. "Moral" rights asserted. -- Permission is hereby granted to copy and to distribute this specification in its original, unmodified form as long as its last modification datestamp information is preserved. -- Permission is hereby granted to create codecs that have been derived from this specification, and to grant copying and distribution rights for them. END