예제 #1
0
파일: X509.py 프로젝트: rodrigc/m2crypto
    def __setattr__(self, attr, value):
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return m2.x509_name_set_by_nid(self.x509_name, self.nid[attr],
                                           value)

        self.__dict__[attr] = value
예제 #2
0
 def __init__(self, x509_name=None, _pyfree=0):
     if x509_name is not None:
         assert m2.x509_name_type_check(x509_name), "'x509_name' type error"
         self.x509_name = x509_name
         self._pyfree = _pyfree
     else:
         self.x509_name = m2.x509_name_new()
         self._pyfree = 1
예제 #3
0
파일: X509.py 프로젝트: rodrigc/m2crypto
 def __init__(self, x509_name=None, _pyfree=0):
     if x509_name is not None:
         assert m2.x509_name_type_check(x509_name), "'x509_name' type error"
         self.x509_name = x509_name
         self._pyfree = _pyfree
     else:
         self.x509_name = m2.x509_name_new()
         self._pyfree = 1
예제 #4
0
    def __setattr__(self, attr, value):
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return m2.x509_name_set_by_nid(self.x509_name, self.nid[attr],
                                           value)

        self.__dict__[attr] = value
예제 #5
0
파일: X509.py 프로젝트: rodrigc/m2crypto
    def __getattr__(self, attr):
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return m2.x509_name_by_nid(self.x509_name, self.nid[attr])

        if attr in self.__dict__:
            return self.__dict__[attr]

        raise AttributeError(self, attr)
예제 #6
0
    def __getattr__(self, attr):
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return m2.x509_name_by_nid(self.x509_name, self.nid[attr])

        if attr in self.__dict__:
            return self.__dict__[attr]

        raise AttributeError(self, attr)
예제 #7
0
    def __getattr__(self, attr):
        # type: (str) -> str
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return six.ensure_text(m2.x509_name_by_nid(self.x509_name, self.nid[attr]))

        if attr in self.__dict__:
            return self.__dict__[attr]

        raise AttributeError(self, attr)
예제 #8
0
파일: X509.py 프로젝트: mcepl/M2Crypto
    def __getattr__(self, attr):
        # type: (str) -> str
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return six.ensure_text(m2.x509_name_by_nid(self.x509_name, self.nid[attr]))

        if attr in self.__dict__:
            return self.__dict__[attr]

        raise AttributeError(self, attr)
예제 #9
0
파일: X509.py 프로젝트: mcepl/M2Crypto
    def __setattr__(self, attr, value):
        # type: (str, AnyStr) -> int
        """
        :return: 1 for success of 0 if an error occurred.
        """
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return m2.x509_name_set_by_nid(self.x509_name, self.nid[attr],
                                           six.ensure_binary(value))

        self.__dict__[attr] = value
예제 #10
0
    def __setattr__(self, attr, value):
        # type: (str, AnyStr) -> int
        """
        :return: 1 for success of 0 if an error occurred.
        """
        if attr in self.nid:
            assert m2.x509_name_type_check(self.x509_name), \
                "'x509_name' type error"
            return m2.x509_name_set_by_nid(self.x509_name, self.nid[attr],
                                           util.py3bytes(value))

        self.__dict__[attr] = value
예제 #11
0
파일: X509.py 프로젝트: rodrigc/m2crypto
    def as_text(self, indent=0, flags=m2.XN_FLAG_COMPAT):
        """
        as_text returns the name as a string.

        @param indent: Each line in multiline format is indented
                       by this many spaces.
        @param flags:  Flags that control how the output should be formatted.
        """
        assert m2.x509_name_type_check(self.x509_name), \
            "'x509_name' type error"
        buf = BIO.MemoryBuffer()
        m2.x509_name_print_ex(buf.bio_ptr(), self.x509_name, indent, flags)
        return buf.read_all()
예제 #12
0
 def __init__(self, x509_name=None, _pyfree=0):
     # type: (bytes, int) -> None
     """
     :param x509_name: this should be OpenSSL X509_NAME binary
     :param _pyfree:
     """
     if x509_name is not None:
         assert m2.x509_name_type_check(x509_name), "'x509_name' type error"
         self.x509_name = x509_name
         self._pyfree = _pyfree
     else:
         self.x509_name = m2.x509_name_new()
         self._pyfree = 1
예제 #13
0
    def as_text(self, indent=0, flags=m2.XN_FLAG_COMPAT):
        """
        as_text returns the name as a string.

        @param indent: Each line in multiline format is indented
                       by this many spaces.
        @param flags:  Flags that control how the output should be formatted.
        """
        assert m2.x509_name_type_check(self.x509_name), \
            "'x509_name' type error"
        buf = BIO.MemoryBuffer()
        m2.x509_name_print_ex(buf.bio_ptr(), self.x509_name, indent, flags)
        return buf.read_all()
예제 #14
0
파일: X509.py 프로젝트: mcepl/M2Crypto
 def __init__(self, x509_name=None, _pyfree=0):
     # type: (bytes, int) -> None
     """
     :param x509_name: this should be OpenSSL X509_NAME binary
     :param _pyfree:
     """
     if x509_name is not None:
         assert m2.x509_name_type_check(x509_name), "'x509_name' type error"
         self.x509_name = x509_name
         self._pyfree = _pyfree
     else:
         self.x509_name = m2.x509_name_new()
         self._pyfree = 1
예제 #15
0
 def as_hash(self):
     # type: () -> int
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return m2.x509_name_hash(self.x509_name)
예제 #16
0
 def as_der(self):
     # type: () -> bytes
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return m2.x509_name_get_der(self.x509_name)
예제 #17
0
 def _ptr(self):
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return self.x509_name
예제 #18
0
파일: X509.py 프로젝트: mcepl/M2Crypto
 def __str__(self):
     # type: () -> bytes
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return m2.x509_name_oneline(self.x509_name)
예제 #19
0
 def __str__(self):
     # type: () -> bytes
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return m2.x509_name_oneline(self.x509_name)
예제 #20
0
파일: X509.py 프로젝트: mcepl/M2Crypto
 def _ptr(self):
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return self.x509_name
예제 #21
0
파일: X509.py 프로젝트: mcepl/M2Crypto
 def as_der(self):
     # type: () -> bytes
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return m2.x509_name_get_der(self.x509_name)
예제 #22
0
파일: X509.py 프로젝트: mcepl/M2Crypto
 def as_hash(self):
     # type: () -> int
     assert m2.x509_name_type_check(self.x509_name), \
         "'x509_name' type error"
     return m2.x509_name_hash(self.x509_name)