#!/usr/bin/env python '''Priklad pouziti M2Crypto - pripojeni k https serveru''' request = "GET / HTTP/1.1\x0D\x0AHost: www.verisign.com\x0D\x0A\x43onnection: Close\x0D\x0A\x0D\x0A" from M2Crypto.SSL.Context import Context from M2Crypto.SSL.Connection import Connection from sys import exit ctx = Context() #vytvorime kontext pripojeni ctx.load_verify_info('TrustStore.pem') #nacteme certifikat do kontextu con = Connection(ctx) #vytvorime objekt pripojeni if con.connect(('www.verisign.com', 443)) <= 0: #pokus o spojeni se serverem print 'Error attempting to connect' ctx.close() exit(1) if not con.verify_ok(): #pokud nemame platny certifikat - chyba print 'Certificate verification error: %i' % con.get_verify_result() #cislo chyby # con.clear() #tento prikaz nefunguje s PEM knihovnou con.close() ctx.close() exit(1) con.write(request) #posleme pozadavek serveru while 1: p = con.read(1023) #ziskame data ze serveru if p == '': break print p con.close() #ukonceni spojeni ctx.close() #uvolneni kontextu