mysql2 0.4.0-x86-mswin32-60 → 0.4.1-x86-mswin32-60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/examples/eventmachine.rb +1 -1
 - data/ext/mysql2/client.c +45 -44
 - data/ext/mysql2/client.h +1 -2
 - data/ext/mysql2/extconf.rb +59 -37
 - data/ext/mysql2/infile.c +2 -2
 - data/ext/mysql2/mysql2_ext.h +4 -6
 - data/ext/mysql2/mysql_enc_name_to_ruby.h +8 -8
 - data/ext/mysql2/mysql_enc_to_ruby.h +25 -22
 - data/ext/mysql2/result.c +4 -16
 - data/ext/mysql2/result.h +3 -3
 - data/ext/mysql2/statement.c +79 -42
 - data/ext/mysql2/statement.h +2 -6
 - data/lib/mysql2.rb +36 -18
 - data/lib/mysql2/1.8/mysql2.so +0 -0
 - data/lib/mysql2/1.9/mysql2.so +0 -0
 - data/lib/mysql2/2.0/mysql2.so +0 -0
 - data/lib/mysql2/2.1/mysql2.so +0 -0
 - data/lib/mysql2/2.2/mysql2.so +0 -0
 - data/lib/mysql2/client.rb +28 -27
 - data/lib/mysql2/console.rb +1 -1
 - data/lib/mysql2/em.rb +5 -6
 - data/lib/mysql2/error.rb +10 -7
 - data/lib/mysql2/field.rb +1 -2
 - data/lib/mysql2/statement.rb +12 -0
 - data/lib/mysql2/version.rb +1 -1
 - data/spec/em/em_spec.rb +8 -8
 - data/spec/mysql2/client_spec.rb +62 -37
 - data/spec/mysql2/result_spec.rb +48 -48
 - data/spec/mysql2/statement_spec.rb +143 -57
 - data/spec/ssl/ca-cert.pem +17 -0
 - data/spec/ssl/ca-key.pem +27 -0
 - data/spec/ssl/ca.cnf +22 -0
 - data/spec/ssl/cert.cnf +22 -0
 - data/spec/ssl/client-cert.pem +17 -0
 - data/spec/ssl/client-key.pem +27 -0
 - data/spec/ssl/client-req.pem +15 -0
 - data/spec/ssl/gen_certs.sh +48 -0
 - data/spec/ssl/pkcs8-client-key.pem +28 -0
 - data/spec/ssl/pkcs8-server-key.pem +28 -0
 - data/spec/ssl/server-cert.pem +17 -0
 - data/spec/ssl/server-key.pem +27 -0
 - data/spec/ssl/server-req.pem +15 -0
 - data/support/mysql_enc_to_ruby.rb +7 -8
 - data/support/ruby_enc_to_mysql.rb +1 -1
 - metadata +28 -2
 
| 
         @@ -0,0 +1,17 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN CERTIFICATE-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIICqjCCAZICCQDbDS+Z2mpWkDANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxj
         
     | 
| 
      
 3 
     | 
    
         
            +
            YV9teXNxbDJnZW0wHhcNMTUwOTA5MDQ1NzIxWhcNMjUwNzE4MDQ1NzIxWjAXMRUw
         
     | 
| 
      
 4 
     | 
    
         
            +
            EwYDVQQDDAxjYV9teXNxbDJnZW0wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
         
     | 
| 
      
 5 
     | 
    
         
            +
            AoIBAQDFnpc22lPFtdPELsIffsDt8cD2Hkt47nGMcKQ9n4U98yAg+fodipyP1Bn0
         
     | 
| 
      
 6 
     | 
    
         
            +
            2OeaONqpttJIET7HxlGrtugPtV/O8XZHlhfAHrRUDMFZJhgnnqK+c/7fRGeB0Eqw
         
     | 
| 
      
 7 
     | 
    
         
            +
            ljBlRD/dDL3bFq5hVBC9QsGi5k03r+xLPKm5ccAr4WtofcoKXqEbSO6koTSrsGG5
         
     | 
| 
      
 8 
     | 
    
         
            +
            7inlldM2AVzrY2kXbe0jAyNvYmDL2ycN8G2wObogPWDfITQRhOxfkzKIQiEhQF2Y
         
     | 
| 
      
 9 
     | 
    
         
            +
            /DlhT7IbIarBIm6abf6JxZ6/Sm5XyVNEWOnryXM6rKyVeGktCxLHNmxx5eKYs440
         
     | 
| 
      
 10 
     | 
    
         
            +
            8hNgURa8pB+aZaiokkwhM1+jmE83AgMBAAEwDQYJKoZIhvcNAQELBQADggEBACrQ
         
     | 
| 
      
 11 
     | 
    
         
            +
            umqygXkkbff5Jqf6AYi30U3c+byX+IButRKXN9Ete2LPcT76o/snS9Lexf3KQsIy
         
     | 
| 
      
 12 
     | 
    
         
            +
            a2Tcc9adak7pBf7FgHdiZkWiQp3MDgx2gJu6Uu6TNzfT8jy2JrHyBWw4ydEvhyA8
         
     | 
| 
      
 13 
     | 
    
         
            +
            cgelTHSaudafKeQgU4KYc8bqafYFILkWxPzgtwitENIDfx/SHt65BWaQZjYJlFou
         
     | 
| 
      
 14 
     | 
    
         
            +
            zPZXeoT3lAwKGYqIvwPvBTC23cXg/Swt/mcKe3/Xxjx85Dw/9vi6a9+VQwlOojgd
         
     | 
| 
      
 15 
     | 
    
         
            +
            w2o07xkIcJcI0Oxyp3mD0U5wAmBQGI76Yi9ZDROHF65KEXfQ3tYKl2vR7CXpcJ4+
         
     | 
| 
      
 16 
     | 
    
         
            +
            7+fVsE8+dADJdZIiuaA=
         
     | 
| 
      
 17 
     | 
    
         
            +
            -----END CERTIFICATE-----
         
     | 
    
        data/spec/ssl/ca-key.pem
    ADDED
    
    | 
         @@ -0,0 +1,27 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN RSA PRIVATE KEY-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIIEpQIBAAKCAQEAxZ6XNtpTxbXTxC7CH37A7fHA9h5LeO5xjHCkPZ+FPfMgIPn6
         
     | 
| 
      
 3 
     | 
    
         
            +
            HYqcj9QZ9NjnmjjaqbbSSBE+x8ZRq7boD7VfzvF2R5YXwB60VAzBWSYYJ56ivnP+
         
     | 
| 
      
 4 
     | 
    
         
            +
            30RngdBKsJYwZUQ/3Qy92xauYVQQvULBouZNN6/sSzypuXHAK+FraH3KCl6hG0ju
         
     | 
| 
      
 5 
     | 
    
         
            +
            pKE0q7Bhue4p5ZXTNgFc62NpF23tIwMjb2Jgy9snDfBtsDm6ID1g3yE0EYTsX5My
         
     | 
| 
      
 6 
     | 
    
         
            +
            iEIhIUBdmPw5YU+yGyGqwSJumm3+icWev0puV8lTRFjp68lzOqyslXhpLQsSxzZs
         
     | 
| 
      
 7 
     | 
    
         
            +
            ceXimLOONPITYFEWvKQfmmWoqJJMITNfo5hPNwIDAQABAoIBAQClkmtFRQVdKCum
         
     | 
| 
      
 8 
     | 
    
         
            +
            Ojrg4nVIpv2x983qI3U1YobpLocXUWVA29BIAgOMqfuZXkYlu67Q9OEYCoLcJHf2
         
     | 
| 
      
 9 
     | 
    
         
            +
            88dYqfD81OfxsHpzuAYESa+RPs6MG2hlQ5BuhcRnShnZ++vOXLFZRjynnEg8OY/Q
         
     | 
| 
      
 10 
     | 
    
         
            +
            0makUmqt1pKWstvNCNYmrbYtFP87UXQCF06zkhM0cZJvVt0gPZGUituWI0uAoE51
         
     | 
| 
      
 11 
     | 
    
         
            +
            U8+WSwD/T761BHM6BuMn56mfZkP5jeVIFl0iFha9rGR0Z6K8mVQAYQAUtUx9tN/3
         
     | 
| 
      
 12 
     | 
    
         
            +
            a8fEOcYulq/9R5tMRWtsF8LD8DGQBNkY3e/WKDuZtLw2Dl3L09gxVH9DXCLiYU5d
         
     | 
| 
      
 13 
     | 
    
         
            +
            OG3JmqDpAoGBAP08yq143H4n6yGT9DC8YjaLgN0VoenK21CEqhwtGWipc/kbGooe
         
     | 
| 
      
 14 
     | 
    
         
            +
            /jaHl6bo9v1GOGlJieqSUqsXNltS7FOLhGFAQFwMYZ3V/h15Vx23Z+xkCCHIB6HH
         
     | 
| 
      
 15 
     | 
    
         
            +
            YJZqkQY7Jt86wXcaLU5j9fxM+BY+8Ets4bVhZN9Ai6AnlTz0+d8UJG+bAoGBAMfG
         
     | 
| 
      
 16 
     | 
    
         
            +
            efYrdjTKI5eK9aiVJyoh57BEPOsTsave2U+R8Q+fErQ0QD0UmbWgwYGgkPuDrFYT
         
     | 
| 
      
 17 
     | 
    
         
            +
            owg09EEz88KONv18VZ+mB1qfyQUoOL6rWIGxXC08upy2i9100PaBFiYlkLNoK7yJ
         
     | 
| 
      
 18 
     | 
    
         
            +
            bze0rFSiFclJJXZGzEaVvcEdKnXxfhttaJwQGK6VAoGBAOQEUvJzuwWU5/CqCdvA
         
     | 
| 
      
 19 
     | 
    
         
            +
            JCa84eEv00RxtZwAeDM6oIBO4+/O6cyoL3nmCTTu20YebjjPUHF4IxuOoREFz2lC
         
     | 
| 
      
 20 
     | 
    
         
            +
            XIY8ljbLpzG5N0BOu5Q0SkzdnTzdoZGXtm55se+MX2nsu7qERXsqIpl0rIVLUo53
         
     | 
| 
      
 21 
     | 
    
         
            +
            kZwCABPNSGuCeKwUYNDukAg1AoGBALiHHSqEVKhIOn4FDgqM0uM49CA9t6NPyqI9
         
     | 
| 
      
 22 
     | 
    
         
            +
            sq6r2GWcgpNPXDLPL3e0KGlK3gBkTLApbULsXt1HVpZT9HlJ+nD/0/UieHS6BUgh
         
     | 
| 
      
 23 
     | 
    
         
            +
            Txxkrgbe/GQ6vZBuEYJQFBxiQHlm9Fcu/zsOOMvn94W4edD5bkCYmfChtxHAYcKF
         
     | 
| 
      
 24 
     | 
    
         
            +
            2cWlnJbNAoGAWMV4GIY2DYlztXdyMVuPwsjPcSPMmL8Nc2ATWYRfcoG0Zl0yvwPh
         
     | 
| 
      
 25 
     | 
    
         
            +
            2VOu7Q/7bNF2LOe6lPe1hoeB6rT44IYZaWMo3ikY8xW9RztOLSv8E9uE1K9yq8OA
         
     | 
| 
      
 26 
     | 
    
         
            +
            P8QzXmr1Lga+hoEmMHc2biEJNeF6iAcAFfrHj9Sr7w5PC8g4A3PlCvU=
         
     | 
| 
      
 27 
     | 
    
         
            +
            -----END RSA PRIVATE KEY-----
         
     | 
    
        data/spec/ssl/ca.cnf
    ADDED
    
    | 
         @@ -0,0 +1,22 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
             
     | 
| 
      
 2 
     | 
    
         
            +
            [ ca ]
         
     | 
| 
      
 3 
     | 
    
         
            +
            # January 1, 2015
         
     | 
| 
      
 4 
     | 
    
         
            +
            default_startdate = 2015010360000Z
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            [ req ]
         
     | 
| 
      
 7 
     | 
    
         
            +
            distinguished_name = req_distinguished_name
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            [ req_distinguished_name ]
         
     | 
| 
      
 10 
     | 
    
         
            +
            # If this isn't set, the error is error, no objects specified in config file
         
     | 
| 
      
 11 
     | 
    
         
            +
            commonName = Common Name (hostname, IP, or your name)
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            countryName_default            = US
         
     | 
| 
      
 14 
     | 
    
         
            +
            stateOrProvinceName_default    = CA
         
     | 
| 
      
 15 
     | 
    
         
            +
            localityName_default           = San Francisco
         
     | 
| 
      
 16 
     | 
    
         
            +
            0.organizationName_default     = mysql2_gem
         
     | 
| 
      
 17 
     | 
    
         
            +
            organizationalUnitName_default = Mysql2Gem
         
     | 
| 
      
 18 
     | 
    
         
            +
            emailAddress_default           = mysql2gem@example.com
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
            commonName_default             = ca_mysql2gem
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
    
        data/spec/ssl/cert.cnf
    ADDED
    
    | 
         @@ -0,0 +1,22 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
             
     | 
| 
      
 2 
     | 
    
         
            +
            [ ca ]
         
     | 
| 
      
 3 
     | 
    
         
            +
            # January 1, 2015
         
     | 
| 
      
 4 
     | 
    
         
            +
            default_startdate = 2015010360000Z
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            [ req ]
         
     | 
| 
      
 7 
     | 
    
         
            +
            distinguished_name = req_distinguished_name
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            [ req_distinguished_name ]
         
     | 
| 
      
 10 
     | 
    
         
            +
            # If this isn't set, the error is error, no objects specified in config file
         
     | 
| 
      
 11 
     | 
    
         
            +
            commonName = Common Name (hostname, IP, or your name)
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            countryName_default            = US
         
     | 
| 
      
 14 
     | 
    
         
            +
            stateOrProvinceName_default    = CA
         
     | 
| 
      
 15 
     | 
    
         
            +
            localityName_default           = San Francisco
         
     | 
| 
      
 16 
     | 
    
         
            +
            0.organizationName_default     = mysql2_gem
         
     | 
| 
      
 17 
     | 
    
         
            +
            organizationalUnitName_default = Mysql2Gem
         
     | 
| 
      
 18 
     | 
    
         
            +
            emailAddress_default           = mysql2gem@example.com
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
            commonName_default             = mysql2gem.example.com
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
         @@ -0,0 +1,17 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN CERTIFICATE-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIICqzCCAZMCAQEwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAwwMY2FfbXlzcWwy
         
     | 
| 
      
 3 
     | 
    
         
            +
            Z2VtMB4XDTE1MDkwOTA0NTcyMVoXDTI1MDcxODA0NTcyMVowIDEeMBwGA1UEAwwV
         
     | 
| 
      
 4 
     | 
    
         
            +
            bXlzcWwyZ2VtLmV4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
         
     | 
| 
      
 5 
     | 
    
         
            +
            CgKCAQEA1ZuBf1FVJqil7/LvnXqPd43ujo0xqbFy7QrqmM5U/UM3ggMCf2Gr2/Wo
         
     | 
| 
      
 6 
     | 
    
         
            +
            ZJGPTk1NFaiUyM5mhSlgi0/SGPEp9JMUuH+Uiv9UwmOFl9Em3FXQQ8SG7fV7651u
         
     | 
| 
      
 7 
     | 
    
         
            +
            AUskNgfEqoy+f+uvi1P155rHNDx7Yw6i+wwfpLGTU0boMnLL6cO/KcIbZlx4/2Lq
         
     | 
| 
      
 8 
     | 
    
         
            +
            r5sYbpIqhz46bbG+fIhvepruH9h7WVWqAibTqymYrA3T03O/HWTOqfq03gM7Oe3t
         
     | 
| 
      
 9 
     | 
    
         
            +
            JvJbqX2LecQvi2SbQoX8c2MrQ6X7xDe2Ajh7Yx9DQ1gqClTglbPFHNiWPcGACg+W
         
     | 
| 
      
 10 
     | 
    
         
            +
            2ptCY/Q2SdP5h1dtj5Sw5VwL3dvCjQIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQA2
         
     | 
| 
      
 11 
     | 
    
         
            +
            qTbfgDm0IG8x1qP61ztT9F2WRwG7cp6qHT5oB5wDcOUFes9QJjeB8RoIkB+hRlqG
         
     | 
| 
      
 12 
     | 
    
         
            +
            J6/Tbxs49d7oKhOQ0UaTnfIKC5m0UFYFGc3lUcwxQyggOWx9XV5ZmGb48+RLFnDV
         
     | 
| 
      
 13 
     | 
    
         
            +
            Gfcs/hvfem6Xfpgzr8bGs2ZM9x1j9YnXNJVePmKwktjCPnXPOeHyxNZPA+CWHed/
         
     | 
| 
      
 14 
     | 
    
         
            +
            dNg1IWuQnnp20LgNRARCTgR/ONAJNUfh2GqRLq2JOf0cyhNlsKQ3epkeUyc72knI
         
     | 
| 
      
 15 
     | 
    
         
            +
            oWVxPluQYvFHN+xif0FMGVLM8lz0b+6uPJDA2Km70B/iorMRVb0vbMeFrMmQ5UgM
         
     | 
| 
      
 16 
     | 
    
         
            +
            4tplX52P2vb6JNnektfR
         
     | 
| 
      
 17 
     | 
    
         
            +
            -----END CERTIFICATE-----
         
     | 
| 
         @@ -0,0 +1,27 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN RSA PRIVATE KEY-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIIEowIBAAKCAQEA1ZuBf1FVJqil7/LvnXqPd43ujo0xqbFy7QrqmM5U/UM3ggMC
         
     | 
| 
      
 3 
     | 
    
         
            +
            f2Gr2/WoZJGPTk1NFaiUyM5mhSlgi0/SGPEp9JMUuH+Uiv9UwmOFl9Em3FXQQ8SG
         
     | 
| 
      
 4 
     | 
    
         
            +
            7fV7651uAUskNgfEqoy+f+uvi1P155rHNDx7Yw6i+wwfpLGTU0boMnLL6cO/KcIb
         
     | 
| 
      
 5 
     | 
    
         
            +
            Zlx4/2Lqr5sYbpIqhz46bbG+fIhvepruH9h7WVWqAibTqymYrA3T03O/HWTOqfq0
         
     | 
| 
      
 6 
     | 
    
         
            +
            3gM7Oe3tJvJbqX2LecQvi2SbQoX8c2MrQ6X7xDe2Ajh7Yx9DQ1gqClTglbPFHNiW
         
     | 
| 
      
 7 
     | 
    
         
            +
            PcGACg+W2ptCY/Q2SdP5h1dtj5Sw5VwL3dvCjQIDAQABAoIBAEWhGjZZWctvQCAW
         
     | 
| 
      
 8 
     | 
    
         
            +
            bbtEv012a6P2LJEnMdJJM6253IRuC8MKnh7NxMq/qjOWK0OX+R+tQ0qt1Udk9H6U
         
     | 
| 
      
 9 
     | 
    
         
            +
            92SAAHAkHaYCmHYywvtWm66gU+2Q34Gnp2AcHFfyinBLgTNHlvkNRe/G8QMWzFrB
         
     | 
| 
      
 10 
     | 
    
         
            +
            3luNt57Tn5b8Hbh+1gpYW8pOF2BMgIsLRK+8b26TKUWrSCc/ZxOSY4wmrNybxkgr
         
     | 
| 
      
 11 
     | 
    
         
            +
            HGt27lwIN0cvJZbmQvHevNzzCn+bYoo2K1MQj34xHbZ2NLqKqFVlSJtr9+BHffAc
         
     | 
| 
      
 12 
     | 
    
         
            +
            fkcf+V+D+FkitUVkha9qXa02wtLzYSF+Q5Ef3kQQs6hs/HOdN16g17l9QC6Mk1vm
         
     | 
| 
      
 13 
     | 
    
         
            +
            a9yV5CECgYEA/9FglQmFimwBCOWEvjkZzoXFusuvRWRgAPU/1c9DAYRS2GfOkjlH
         
     | 
| 
      
 14 
     | 
    
         
            +
            RPAltczdXh4EQ0NkCqHH7JWgrdXGonKg4fcITumdwcYKV5QfmKBO4onAboEM0Wq7
         
     | 
| 
      
 15 
     | 
    
         
            +
            wjifuga7npQhPnGvkXFDamVz5McQPObvV42VAUwk1N00gOYw/46ryLkCgYEA1cJv
         
     | 
| 
      
 16 
     | 
    
         
            +
            jHAq0DKlUGXKyZ+ixsogRpwTQvND/qUquSLgD/KgfeT+70AnsEF6DbVLKoaJ35CF
         
     | 
| 
      
 17 
     | 
    
         
            +
            ju83VYLfeBljq+E/lgmAyaChplORRXcu+xPQE4rbp0MbsoBOYGNWLFAw3twGsQf9
         
     | 
| 
      
 18 
     | 
    
         
            +
            iuAtCVxij/hhj4FWRebYHMnV6Min2VPbZdASNnUCgYBIiX8gY3XJPTzB4ArWwWwu
         
     | 
| 
      
 19 
     | 
    
         
            +
            4kGh6NWHEKIkQ2ZZYw615GZ1VGH/llw+EPYwaamvYUWGKRq55QvCat8Hy6EqOOSj
         
     | 
| 
      
 20 
     | 
    
         
            +
            jh99+MIxyszt7mNTLMmRdMvqyY7v5prcxJ+N6RDUM16FzUiiLgKWrbPCACv7iOP+
         
     | 
| 
      
 21 
     | 
    
         
            +
            6HeCyat77ElR73OfUz4kiQKBgH+2r9cEnU/PMp4ac1KLokGLOkV1srxpg9J89E2w
         
     | 
| 
      
 22 
     | 
    
         
            +
            3JYqrGELlJV1i0DvnfDaxJIf1/hO7L09h537l3C2Gqry5X7LJrtQ0cQCYeVTFCrG
         
     | 
| 
      
 23 
     | 
    
         
            +
            56cFa78/hSjdJ/bG4xGOx+QfKZBT6dQzpDTXkbva9s86w0T4a16n6LowSLi8NXVb
         
     | 
| 
      
 24 
     | 
    
         
            +
            H8aRAoGBAKzlt6deB+ASIrGH6mM0eLxF1OcNTB+rE4AJxoUyO1oAmCv9UeK3IzwP
         
     | 
| 
      
 25 
     | 
    
         
            +
            ohhmo/kEOSCVG6WE+6+r9mojcoHu3ZrobVKl59R7KMdzunMXqxZcXeTqjvqdTtV7
         
     | 
| 
      
 26 
     | 
    
         
            +
            rWuEz/TKIe7o0Tx19XVGuNftyx2pLuspSAAbZ+YAQJtzmLzsGkss
         
     | 
| 
      
 27 
     | 
    
         
            +
            -----END RSA PRIVATE KEY-----
         
     | 
| 
         @@ -0,0 +1,15 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN CERTIFICATE REQUEST-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIICZTCCAU0CAQAwIDEeMBwGA1UEAwwVbXlzcWwyZ2VtLmV4YW1wbGUuY29tMIIB
         
     | 
| 
      
 3 
     | 
    
         
            +
            IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1ZuBf1FVJqil7/LvnXqPd43u
         
     | 
| 
      
 4 
     | 
    
         
            +
            jo0xqbFy7QrqmM5U/UM3ggMCf2Gr2/WoZJGPTk1NFaiUyM5mhSlgi0/SGPEp9JMU
         
     | 
| 
      
 5 
     | 
    
         
            +
            uH+Uiv9UwmOFl9Em3FXQQ8SG7fV7651uAUskNgfEqoy+f+uvi1P155rHNDx7Yw6i
         
     | 
| 
      
 6 
     | 
    
         
            +
            +wwfpLGTU0boMnLL6cO/KcIbZlx4/2Lqr5sYbpIqhz46bbG+fIhvepruH9h7WVWq
         
     | 
| 
      
 7 
     | 
    
         
            +
            AibTqymYrA3T03O/HWTOqfq03gM7Oe3tJvJbqX2LecQvi2SbQoX8c2MrQ6X7xDe2
         
     | 
| 
      
 8 
     | 
    
         
            +
            Ajh7Yx9DQ1gqClTglbPFHNiWPcGACg+W2ptCY/Q2SdP5h1dtj5Sw5VwL3dvCjQID
         
     | 
| 
      
 9 
     | 
    
         
            +
            AQABoAAwDQYJKoZIhvcNAQELBQADggEBAB05YaBSyAKCgHfBWhpZ1+OOVp1anr2v
         
     | 
| 
      
 10 
     | 
    
         
            +
            TkStnqmNrNM2qBJXjfrythPTX4EJAt7+eNdH/6IVA93qKC/EUQVuMjgfMmMUaM+m
         
     | 
| 
      
 11 
     | 
    
         
            +
            5pqfAo95w7vUY147U9nbC+EIo2u1KOVTNTgl45H372/1vCwTHZYu2atCk4tN3ueO
         
     | 
| 
      
 12 
     | 
    
         
            +
            0O2XW89Kq94/7PDAExN2PhZdeATVX9dPNT+7ZUDNe8cuq9v0YCHy+2JN2WkplxcG
         
     | 
| 
      
 13 
     | 
    
         
            +
            kMyCE3YYLnd96YtWiS9DOUib3+b7FwyGe0dXeLVw1br3NZGCZrybyfmnAQfiouAF
         
     | 
| 
      
 14 
     | 
    
         
            +
            9nMxKIpWFSx00ubGrUefOQqp6nuk27n+scgr4+d6dBXz9efEEvTbLKA=
         
     | 
| 
      
 15 
     | 
    
         
            +
            -----END CERTIFICATE REQUEST-----
         
     | 
| 
         @@ -0,0 +1,48 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #!/usr/bin/env bash
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            set -eu
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            echo "
         
     | 
| 
      
 6 
     | 
    
         
            +
            [ ca ]
         
     | 
| 
      
 7 
     | 
    
         
            +
            # January 1, 2015
         
     | 
| 
      
 8 
     | 
    
         
            +
            default_startdate = 2015010360000Z
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            [ req ]
         
     | 
| 
      
 11 
     | 
    
         
            +
            distinguished_name = req_distinguished_name
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            [ req_distinguished_name ]
         
     | 
| 
      
 14 
     | 
    
         
            +
            # If this isn't set, the error is "error, no objects specified in config file"
         
     | 
| 
      
 15 
     | 
    
         
            +
            commonName = Common Name (hostname, IP, or your name)
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            countryName_default            = US
         
     | 
| 
      
 18 
     | 
    
         
            +
            stateOrProvinceName_default    = CA
         
     | 
| 
      
 19 
     | 
    
         
            +
            localityName_default           = San Francisco
         
     | 
| 
      
 20 
     | 
    
         
            +
            0.organizationName_default     = mysql2_gem
         
     | 
| 
      
 21 
     | 
    
         
            +
            organizationalUnitName_default = Mysql2Gem
         
     | 
| 
      
 22 
     | 
    
         
            +
            emailAddress_default           = mysql2gem@example.com
         
     | 
| 
      
 23 
     | 
    
         
            +
            " | tee ca.cnf cert.cnf
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
            # The client and server certs must have a diferent common name than the CA
         
     | 
| 
      
 26 
     | 
    
         
            +
            # to avoid "SSL connection error: error:00000001:lib(0):func(0):reason(1)"
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            echo "
         
     | 
| 
      
 29 
     | 
    
         
            +
            commonName_default             = ca_mysql2gem
         
     | 
| 
      
 30 
     | 
    
         
            +
            " >> ca.cnf
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
            echo "
         
     | 
| 
      
 33 
     | 
    
         
            +
            commonName_default             = mysql2gem.example.com
         
     | 
| 
      
 34 
     | 
    
         
            +
            " >> cert.cnf
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
            # Generate a set of certificates
         
     | 
| 
      
 37 
     | 
    
         
            +
            openssl genrsa -out ca-key.pem 2048
         
     | 
| 
      
 38 
     | 
    
         
            +
            openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca-cert.pem -batch -config ca.cnf
         
     | 
| 
      
 39 
     | 
    
         
            +
            openssl req -newkey rsa:2048 -days 3600 -nodes -keyout pkcs8-server-key.pem -out server-req.pem -batch -config cert.cnf
         
     | 
| 
      
 40 
     | 
    
         
            +
            openssl x509 -req -in server-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem
         
     | 
| 
      
 41 
     | 
    
         
            +
            openssl req -newkey rsa:2048 -days 3600 -nodes -keyout pkcs8-client-key.pem -out client-req.pem -batch -config cert.cnf
         
     | 
| 
      
 42 
     | 
    
         
            +
            openssl x509 -req -in client-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
            # Convert format from PKCS#8 to PKCS#1
         
     | 
| 
      
 45 
     | 
    
         
            +
            openssl rsa -in pkcs8-server-key.pem -out server-key.pem
         
     | 
| 
      
 46 
     | 
    
         
            +
            openssl rsa -in pkcs8-client-key.pem -out client-key.pem
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            echo "done"
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN PRIVATE KEY-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDVm4F/UVUmqKXv
         
     | 
| 
      
 3 
     | 
    
         
            +
            8u+deo93je6OjTGpsXLtCuqYzlT9QzeCAwJ/Yavb9ahkkY9OTU0VqJTIzmaFKWCL
         
     | 
| 
      
 4 
     | 
    
         
            +
            T9IY8Sn0kxS4f5SK/1TCY4WX0SbcVdBDxIbt9XvrnW4BSyQ2B8SqjL5/66+LU/Xn
         
     | 
| 
      
 5 
     | 
    
         
            +
            msc0PHtjDqL7DB+ksZNTRugycsvpw78pwhtmXHj/YuqvmxhukiqHPjptsb58iG96
         
     | 
| 
      
 6 
     | 
    
         
            +
            mu4f2HtZVaoCJtOrKZisDdPTc78dZM6p+rTeAzs57e0m8lupfYt5xC+LZJtChfxz
         
     | 
| 
      
 7 
     | 
    
         
            +
            YytDpfvEN7YCOHtjH0NDWCoKVOCVs8Uc2JY9wYAKD5bam0Jj9DZJ0/mHV22PlLDl
         
     | 
| 
      
 8 
     | 
    
         
            +
            XAvd28KNAgMBAAECggEARaEaNllZy29AIBZtu0S/TXZro/YskScx0kkzrbnchG4L
         
     | 
| 
      
 9 
     | 
    
         
            +
            wwqeHs3Eyr+qM5YrQ5f5H61DSq3VR2T0fpT3ZIAAcCQdpgKYdjLC+1abrqBT7ZDf
         
     | 
| 
      
 10 
     | 
    
         
            +
            gaenYBwcV/KKcEuBM0eW+Q1F78bxAxbMWsHeW423ntOflvwduH7WClhbyk4XYEyA
         
     | 
| 
      
 11 
     | 
    
         
            +
            iwtEr7xvbpMpRatIJz9nE5JjjCas3JvGSCsca3buXAg3Ry8lluZC8d683PMKf5ti
         
     | 
| 
      
 12 
     | 
    
         
            +
            ijYrUxCPfjEdtnY0uoqoVWVIm2v34Ed98Bx+Rx/5X4P4WSK1RWSFr2pdrTbC0vNh
         
     | 
| 
      
 13 
     | 
    
         
            +
            IX5DkR/eRBCzqGz8c503XqDXuX1ALoyTW+Zr3JXkIQKBgQD/0WCVCYWKbAEI5YS+
         
     | 
| 
      
 14 
     | 
    
         
            +
            ORnOhcW6y69FZGAA9T/Vz0MBhFLYZ86SOUdE8CW1zN1eHgRDQ2QKocfslaCt1cai
         
     | 
| 
      
 15 
     | 
    
         
            +
            cqDh9whO6Z3BxgpXlB+YoE7iicBugQzRarvCOJ+6BruelCE+ca+RcUNqZXPkxxA8
         
     | 
| 
      
 16 
     | 
    
         
            +
            5u9XjZUBTCTU3TSA5jD/jqvIuQKBgQDVwm+McCrQMqVQZcrJn6LGyiBGnBNC80P+
         
     | 
| 
      
 17 
     | 
    
         
            +
            pSq5IuAP8qB95P7vQCewQXoNtUsqhonfkIWO7zdVgt94GWOr4T+WCYDJoKGmU5FF
         
     | 
| 
      
 18 
     | 
    
         
            +
            dy77E9ATitunQxuygE5gY1YsUDDe3AaxB/2K4C0JXGKP+GGPgVZF5tgcydXoyKfZ
         
     | 
| 
      
 19 
     | 
    
         
            +
            U9tl0BI2dQKBgEiJfyBjdck9PMHgCtbBbC7iQaHo1YcQoiRDZlljDrXkZnVUYf+W
         
     | 
| 
      
 20 
     | 
    
         
            +
            XD4Q9jBpqa9hRYYpGrnlC8Jq3wfLoSo45KOOH334wjHKzO3uY1MsyZF0y+rJju/m
         
     | 
| 
      
 21 
     | 
    
         
            +
            mtzEn43pENQzXoXNSKIuApats8IAK/uI4/7od4LJq3vsSVHvc59TPiSJAoGAf7av
         
     | 
| 
      
 22 
     | 
    
         
            +
            1wSdT88ynhpzUouiQYs6RXWyvGmD0nz0TbDcliqsYQuUlXWLQO+d8NrEkh/X+E7s
         
     | 
| 
      
 23 
     | 
    
         
            +
            vT2HnfuXcLYaqvLlfssmu1DRxAJh5VMUKsbnpwVrvz+FKN0n9sbjEY7H5B8pkFPp
         
     | 
| 
      
 24 
     | 
    
         
            +
            1DOkNNeRu9r2zzrDRPhrXqfoujBIuLw1dVsfxpECgYEArOW3p14H4BIisYfqYzR4
         
     | 
| 
      
 25 
     | 
    
         
            +
            vEXU5w1MH6sTgAnGhTI7WgCYK/1R4rcjPA+iGGaj+QQ5IJUbpYT7r6v2aiNyge7d
         
     | 
| 
      
 26 
     | 
    
         
            +
            muhtUqXn1Hsox3O6cxerFlxd5OqO+p1O1Xuta4TP9Moh7ujRPHX1dUa41+3LHaku
         
     | 
| 
      
 27 
     | 
    
         
            +
            6ylIABtn5gBAm3OYvOwaSyw=
         
     | 
| 
      
 28 
     | 
    
         
            +
            -----END PRIVATE KEY-----
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN PRIVATE KEY-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCtyxWYD01zMQby
         
     | 
| 
      
 3 
     | 
    
         
            +
            RwzqzrGypf/x/rhNUT70HChE9TpojPmCe9e38eSvz1+0kGWb4VGKB705mPsY8yry
         
     | 
| 
      
 4 
     | 
    
         
            +
            IO/T2StZI11Ddh7qGbiXJFFeU3s4lrcis3qZTZNvui8hPVmGRjn6TRe6FkX0B/lF
         
     | 
| 
      
 5 
     | 
    
         
            +
            Ip0TV3X2aSAIU7oZpn6qmn4WZFFKgy/EVuDzeaf/RvTrfhnOhbBwhX+93WXt50fK
         
     | 
| 
      
 6 
     | 
    
         
            +
            73YFBEUJ4hOO0VoB34O/555OHY4/FRjTWTusL2LgxcTcE/GRGk9BPBN4cfhmlJHB
         
     | 
| 
      
 7 
     | 
    
         
            +
            hTSiXkGOyLGv8kbrYffockDhkiPJbMSdWIRV+ZpQX3YXf2y3lGOGbWptgMi3ttzh
         
     | 
| 
      
 8 
     | 
    
         
            +
            6RaKmoZJAgMBAAECggEAFhAyLZvDuVwABcH/Yc/bv1JTq+UqgKZP1627bwWy5JMB
         
     | 
| 
      
 9 
     | 
    
         
            +
            Gg+e0ztiTO+GtuWeAKwaLevNmgJR3lkAmryTtdFcL3TN4kKcqhuZ05ZIvjDa89Qu
         
     | 
| 
      
 10 
     | 
    
         
            +
            a7ldVxkCHq0ETrP7KZDAy4X9/SHWv6RDgQNj7ZCs6RtvdZ8rgRYh/oaeezlBGLRZ
         
     | 
| 
      
 11 
     | 
    
         
            +
            OIeWWHTYk8CMhu+tzR+BHZdXUEHo/sZHwmpdhQQ0HtXs87Eo51waVwHL0BgXT+ak
         
     | 
| 
      
 12 
     | 
    
         
            +
            v7pbhe6sGgNgoix59Lu9WbazxXIyRYDMkZfg0fCauRMG05Wvaeuonk/zlC88Eg3M
         
     | 
| 
      
 13 
     | 
    
         
            +
            yQIW8+Boe7M2yI+egRYeM2TCBnr2B7n8fTG/xQEKAQKBgQDe+hgYWboh6ejCarAB
         
     | 
| 
      
 14 
     | 
    
         
            +
            UOd90D//aLtbyu0HBQ6YNiPPUvVmEMfDVscxw6BXTtRWpHYSxsPV+IpUM73St/cu
         
     | 
| 
      
 15 
     | 
    
         
            +
            RmrP1DOTT4sJJf9lvNg35+OceGHRe0hVUU9mVqBMbLz5NOPwxWlq4eSgK+cAKq3g
         
     | 
| 
      
 16 
     | 
    
         
            +
            5lp47IFxX0R+g+dvk7YhSy4+rwKBgQDHiEBLjZahY100PffLygIwvwbTyoK9UMjS
         
     | 
| 
      
 17 
     | 
    
         
            +
            On1sGqOf9aF79zQIIRhEmPN/je9jqnAcf8+ivS1dLYoUboosm7215349Uw6S9C43
         
     | 
| 
      
 18 
     | 
    
         
            +
            RIn1iLZRGO7Beq3KOrdp4NFnh3QsgoH4jp1gp4w6QyBC2uYBdQXA9GpUR2+Y45BI
         
     | 
| 
      
 19 
     | 
    
         
            +
            KVSHQV4IhwKBgQDQLig48+04pK9QdVOGpwa7DKfzytDCzx+mIi6SJlogw4+ij6Ay
         
     | 
| 
      
 20 
     | 
    
         
            +
            3N51s/QMD+loS3yB41oMeFSOcRCVoHUDm3M2PyU4MFfbXsKpNjuZVsPH3w1VDAlo
         
     | 
| 
      
 21 
     | 
    
         
            +
            vtWm8tIPCKcW9S6sKWRXCjju4o52NWLKS8fEhuwD8bJ9fKGkJwEw7IRsuQKBgQCU
         
     | 
| 
      
 22 
     | 
    
         
            +
            D4feSI+I7InB9WXGI/1iHK49RJ2lS6fpUBu3t0DJtuSAb5x9l8lBRdoSQclsxJFy
         
     | 
| 
      
 23 
     | 
    
         
            +
            pGj4Erbx2JQIu0nu9hZdQA1OBi7fXzBYNJTGzQ60uPKaQaVqVg26FGhvEXVkfedi
         
     | 
| 
      
 24 
     | 
    
         
            +
            ALnJeiq1JRBwa6yXUjXVy8iHB4dJBTwQQBMIVronSwKBgQDOPYklqdzRv+u4XukW
         
     | 
| 
      
 25 
     | 
    
         
            +
            WsvK7GLj9huwdH0NI5gouGMb5OTgfVo66+urq4qYcHRN4vcdxbP9KoJPBvKhdx+D
         
     | 
| 
      
 26 
     | 
    
         
            +
            A36I2ERs//92gIz6lcNsqmdAzHAX1yzp4IyFGsjzaKibnQrft7hb9Kfg9VypBb/G
         
     | 
| 
      
 27 
     | 
    
         
            +
            31x7mm+gZm4RP3jbcBPDn0xU/w==
         
     | 
| 
      
 28 
     | 
    
         
            +
            -----END PRIVATE KEY-----
         
     | 
| 
         @@ -0,0 +1,17 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN CERTIFICATE-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIICqzCCAZMCAQEwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAwwMY2FfbXlzcWwy
         
     | 
| 
      
 3 
     | 
    
         
            +
            Z2VtMB4XDTE1MDkwOTA0NTcyMVoXDTI1MDcxODA0NTcyMVowIDEeMBwGA1UEAwwV
         
     | 
| 
      
 4 
     | 
    
         
            +
            bXlzcWwyZ2VtLmV4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
         
     | 
| 
      
 5 
     | 
    
         
            +
            CgKCAQEArcsVmA9NczEG8kcM6s6xsqX/8f64TVE+9BwoRPU6aIz5gnvXt/Hkr89f
         
     | 
| 
      
 6 
     | 
    
         
            +
            tJBlm+FRige9OZj7GPMq8iDv09krWSNdQ3Ye6hm4lyRRXlN7OJa3IrN6mU2Tb7ov
         
     | 
| 
      
 7 
     | 
    
         
            +
            IT1ZhkY5+k0XuhZF9Af5RSKdE1d19mkgCFO6GaZ+qpp+FmRRSoMvxFbg83mn/0b0
         
     | 
| 
      
 8 
     | 
    
         
            +
            634ZzoWwcIV/vd1l7edHyu92BQRFCeITjtFaAd+Dv+eeTh2OPxUY01k7rC9i4MXE
         
     | 
| 
      
 9 
     | 
    
         
            +
            3BPxkRpPQTwTeHH4ZpSRwYU0ol5Bjsixr/JG62H36HJA4ZIjyWzEnViEVfmaUF92
         
     | 
| 
      
 10 
     | 
    
         
            +
            F39st5Rjhm1qbYDIt7bc4ekWipqGSQIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBB
         
     | 
| 
      
 11 
     | 
    
         
            +
            PtRuVmOHiRPH3PmsZPtkgVagznojO+r0GDTxys5bxof8+HcokL6gbb4bRqzUQTdC
         
     | 
| 
      
 12 
     | 
    
         
            +
            98RTsuFPnd/I8FbbaL+UyeXeKjjOEBPFyllOdykmpd67mHCA89574y7Ib7lkvtr1
         
     | 
| 
      
 13 
     | 
    
         
            +
            nQFMbeKmcz4uLm1vAi/aOdAIA2de4yJU2XnOkVLDgYnQxpWR451WKqt/FtiuCzpQ
         
     | 
| 
      
 14 
     | 
    
         
            +
            E3peEemM2XVxvCMmfBAaroAyLYFrWOhNA7UoWVsubp7Ypf7SYuOh+sU6JLsYSadQ
         
     | 
| 
      
 15 
     | 
    
         
            +
            XVqgvIKG4deUpdl7oUBRz79spAi1OpHWiNmW3b+8nKJoHTfYkKzCebeLdI++xSjX
         
     | 
| 
      
 16 
     | 
    
         
            +
            jXNryv5xK88LFIPKL/7e
         
     | 
| 
      
 17 
     | 
    
         
            +
            -----END CERTIFICATE-----
         
     | 
| 
         @@ -0,0 +1,27 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN RSA PRIVATE KEY-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIIEpQIBAAKCAQEArcsVmA9NczEG8kcM6s6xsqX/8f64TVE+9BwoRPU6aIz5gnvX
         
     | 
| 
      
 3 
     | 
    
         
            +
            t/Hkr89ftJBlm+FRige9OZj7GPMq8iDv09krWSNdQ3Ye6hm4lyRRXlN7OJa3IrN6
         
     | 
| 
      
 4 
     | 
    
         
            +
            mU2Tb7ovIT1ZhkY5+k0XuhZF9Af5RSKdE1d19mkgCFO6GaZ+qpp+FmRRSoMvxFbg
         
     | 
| 
      
 5 
     | 
    
         
            +
            83mn/0b0634ZzoWwcIV/vd1l7edHyu92BQRFCeITjtFaAd+Dv+eeTh2OPxUY01k7
         
     | 
| 
      
 6 
     | 
    
         
            +
            rC9i4MXE3BPxkRpPQTwTeHH4ZpSRwYU0ol5Bjsixr/JG62H36HJA4ZIjyWzEnViE
         
     | 
| 
      
 7 
     | 
    
         
            +
            VfmaUF92F39st5Rjhm1qbYDIt7bc4ekWipqGSQIDAQABAoIBABYQMi2bw7lcAAXB
         
     | 
| 
      
 8 
     | 
    
         
            +
            /2HP279SU6vlKoCmT9etu28FsuSTARoPntM7YkzvhrblngCsGi3rzZoCUd5ZAJq8
         
     | 
| 
      
 9 
     | 
    
         
            +
            k7XRXC90zeJCnKobmdOWSL4w2vPULmu5XVcZAh6tBE6z+ymQwMuF/f0h1r+kQ4ED
         
     | 
| 
      
 10 
     | 
    
         
            +
            Y+2QrOkbb3WfK4EWIf6Gnns5QRi0WTiHllh02JPAjIbvrc0fgR2XV1BB6P7GR8Jq
         
     | 
| 
      
 11 
     | 
    
         
            +
            XYUENB7V7POxKOdcGlcBy9AYF0/mpL+6W4XurBoDYKIsefS7vVm2s8VyMkWAzJGX
         
     | 
| 
      
 12 
     | 
    
         
            +
            4NHwmrkTBtOVr2nrqJ5P85QvPBINzMkCFvPgaHuzNsiPnoEWHjNkwgZ69ge5/H0x
         
     | 
| 
      
 13 
     | 
    
         
            +
            v8UBCgECgYEA3voYGFm6IenowmqwAVDnfdA//2i7W8rtBwUOmDYjz1L1ZhDHw1bH
         
     | 
| 
      
 14 
     | 
    
         
            +
            McOgV07UVqR2EsbD1fiKVDO90rf3LkZqz9Qzk0+LCSX/ZbzYN+fjnHhh0XtIVVFP
         
     | 
| 
      
 15 
     | 
    
         
            +
            ZlagTGy8+TTj8MVpauHkoCvnACqt4OZaeOyBcV9EfoPnb5O2IUsuPq8CgYEAx4hA
         
     | 
| 
      
 16 
     | 
    
         
            +
            S42WoWNdND33y8oCML8G08qCvVDI0jp9bBqjn/Whe/c0CCEYRJjzf43vY6pwHH/P
         
     | 
| 
      
 17 
     | 
    
         
            +
            or0tXS2KFG6KLJu9ted+PVMOkvQuN0SJ9Yi2URjuwXqtyjq3aeDRZ4d0LIKB+I6d
         
     | 
| 
      
 18 
     | 
    
         
            +
            YKeMOkMgQtrmAXUFwPRqVEdvmOOQSClUh0FeCIcCgYEA0C4oOPPtOKSvUHVThqcG
         
     | 
| 
      
 19 
     | 
    
         
            +
            uwyn88rQws8fpiIukiZaIMOPoo+gMtzedbP0DA/paEt8geNaDHhUjnEQlaB1A5tz
         
     | 
| 
      
 20 
     | 
    
         
            +
            Nj8lODBX217CqTY7mVbDx98NVQwJaL7VpvLSDwinFvUurClkVwo47uKOdjViykvH
         
     | 
| 
      
 21 
     | 
    
         
            +
            xIbsA/GyfXyhpCcBMOyEbLkCgYEAlA+H3kiPiOyJwfVlxiP9YhyuPUSdpUun6VAb
         
     | 
| 
      
 22 
     | 
    
         
            +
            t7dAybbkgG+cfZfJQUXaEkHJbMSRcqRo+BK28diUCLtJ7vYWXUANTgYu318wWDSU
         
     | 
| 
      
 23 
     | 
    
         
            +
            xs0OtLjymkGlalYNuhRobxF1ZH3nYgC5yXoqtSUQcGusl1I11cvIhweHSQU8EEAT
         
     | 
| 
      
 24 
     | 
    
         
            +
            CFa6J0sCgYEAzj2JJanc0b/ruF7pFlrLyuxi4/YbsHR9DSOYKLhjG+Tk4H1aOuvr
         
     | 
| 
      
 25 
     | 
    
         
            +
            q6uKmHB0TeL3HcWz/SqCTwbyoXcfgwN+iNhEbP//doCM+pXDbKpnQMxwF9cs6eCM
         
     | 
| 
      
 26 
     | 
    
         
            +
            hRrI82iom50K37e4W/Sn4PVcqQW/xt9ce5pvoGZuET9423ATw59MVP8=
         
     | 
| 
      
 27 
     | 
    
         
            +
            -----END RSA PRIVATE KEY-----
         
     | 
| 
         @@ -0,0 +1,15 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            -----BEGIN CERTIFICATE REQUEST-----
         
     | 
| 
      
 2 
     | 
    
         
            +
            MIICZTCCAU0CAQAwIDEeMBwGA1UEAwwVbXlzcWwyZ2VtLmV4YW1wbGUuY29tMIIB
         
     | 
| 
      
 3 
     | 
    
         
            +
            IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArcsVmA9NczEG8kcM6s6xsqX/
         
     | 
| 
      
 4 
     | 
    
         
            +
            8f64TVE+9BwoRPU6aIz5gnvXt/Hkr89ftJBlm+FRige9OZj7GPMq8iDv09krWSNd
         
     | 
| 
      
 5 
     | 
    
         
            +
            Q3Ye6hm4lyRRXlN7OJa3IrN6mU2Tb7ovIT1ZhkY5+k0XuhZF9Af5RSKdE1d19mkg
         
     | 
| 
      
 6 
     | 
    
         
            +
            CFO6GaZ+qpp+FmRRSoMvxFbg83mn/0b0634ZzoWwcIV/vd1l7edHyu92BQRFCeIT
         
     | 
| 
      
 7 
     | 
    
         
            +
            jtFaAd+Dv+eeTh2OPxUY01k7rC9i4MXE3BPxkRpPQTwTeHH4ZpSRwYU0ol5Bjsix
         
     | 
| 
      
 8 
     | 
    
         
            +
            r/JG62H36HJA4ZIjyWzEnViEVfmaUF92F39st5Rjhm1qbYDIt7bc4ekWipqGSQID
         
     | 
| 
      
 9 
     | 
    
         
            +
            AQABoAAwDQYJKoZIhvcNAQELBQADggEBAInWIFsq14b8PhDroMMvi1ma30xyQGjg
         
     | 
| 
      
 10 
     | 
    
         
            +
            KObIxakwXkliSxmCdVqV4+MV6w8hK3z0q7H+NzRFByjo1PnU8BCIa058m5uvbjmM
         
     | 
| 
      
 11 
     | 
    
         
            +
            wGQvpcxmpm1p8VKKoeTqvE8OelbrqHrmyNIq7E/S3UZelVt+HOIPJOOs/aqEzaEg
         
     | 
| 
      
 12 
     | 
    
         
            +
            VL1u+4kCMbHM2rG8dii060oZ5i/gUtMn2TQWcNjSQBvaVztW5FOL74bYkoq0zIwd
         
     | 
| 
      
 13 
     | 
    
         
            +
            MFl2BoYyAnERJEcBmh1f+D7MuxPaqTUKjUmfDbHCMAAyTS1FHr9AnIN0/C2Mxywl
         
     | 
| 
      
 14 
     | 
    
         
            +
            H/zL9/DkfR53KZjITkf2gTH5D/N5oDUwmgCg6UZ0MeTOP27jvgcvb/k=
         
     | 
| 
      
 15 
     | 
    
         
            +
            -----END CERTIFICATE REQUEST-----
         
     | 
| 
         @@ -42,7 +42,7 @@ mysql_to_rb = { 
     | 
|
| 
       42 
42 
     | 
    
         
             
              "binary"   => "ASCII-8BIT",
         
     | 
| 
       43 
43 
     | 
    
         
             
              "geostd8"  => "NULL",
         
     | 
| 
       44 
44 
     | 
    
         
             
              "cp932"    => "Windows-31J",
         
     | 
| 
       45 
     | 
    
         
            -
              "eucjpms"  => "eucJP-ms"
         
     | 
| 
      
 45 
     | 
    
         
            +
              "eucjpms"  => "eucJP-ms",
         
     | 
| 
       46 
46 
     | 
    
         
             
            }
         
     | 
| 
       47 
47 
     | 
    
         | 
| 
       48 
48 
     | 
    
         
             
            client     = Mysql2::Client.new(:username => user, :password => pass, :host => host, :port => port.to_i)
         
     | 
| 
         @@ -53,7 +53,7 @@ encodings_with_nil = Array.new(encodings.size) 
     | 
|
| 
       53 
53 
     | 
    
         
             
            collations.each do |collation|
         
     | 
| 
       54 
54 
     | 
    
         
             
              mysql_col_idx = collation[2].to_i
         
     | 
| 
       55 
55 
     | 
    
         
             
              rb_enc = mysql_to_rb[collation[1]]
         
     | 
| 
       56 
     | 
    
         
            -
              encodings[mysql_col_idx-1] = [mysql_col_idx, rb_enc]
         
     | 
| 
      
 56 
     | 
    
         
            +
              encodings[mysql_col_idx - 1] = [mysql_col_idx, rb_enc]
         
     | 
| 
       57 
57 
     | 
    
         
             
            end
         
     | 
| 
       58 
58 
     | 
    
         | 
| 
       59 
59 
     | 
    
         
             
            encodings.each_with_index do |encoding, idx|
         
     | 
| 
         @@ -65,10 +65,10 @@ encodings_with_nil.sort! do |a, b| 
     | 
|
| 
       65 
65 
     | 
    
         
             
            end
         
     | 
| 
       66 
66 
     | 
    
         | 
| 
       67 
67 
     | 
    
         
             
            encodings_with_nil = encodings_with_nil.map do |encoding|
         
     | 
| 
       68 
     | 
    
         
            -
              name =  
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
               
     | 
| 
       71 
     | 
    
         
            -
                 
     | 
| 
      
 68 
     | 
    
         
            +
              name = if encoding.nil? || encoding[1] == 'NULL'
         
     | 
| 
      
 69 
     | 
    
         
            +
                'NULL'
         
     | 
| 
      
 70 
     | 
    
         
            +
              else
         
     | 
| 
      
 71 
     | 
    
         
            +
                "\"#{encoding[1]}\""
         
     | 
| 
       72 
72 
     | 
    
         
             
              end
         
     | 
| 
       73 
73 
     | 
    
         | 
| 
       74 
74 
     | 
    
         
             
              "  #{name}"
         
     | 
| 
         @@ -76,7 +76,6 @@ end 
     | 
|
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
            # start printing output
         
     | 
| 
       78 
78 
     | 
    
         | 
| 
       79 
     | 
    
         
            -
            puts "const char *mysql2_mysql_enc_to_rb[] = {"
         
     | 
| 
      
 79 
     | 
    
         
            +
            puts "static const char *mysql2_mysql_enc_to_rb[] = {"
         
     | 
| 
       80 
80 
     | 
    
         
             
            puts encodings_with_nil.join(",\n")
         
     | 
| 
       81 
81 
     | 
    
         
             
            puts "};"
         
     | 
| 
       82 
     | 
    
         
            -
            puts
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: mysql2
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.4. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.4.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: x86-mswin32-60
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Brian Lopez
         
     | 
| 
         @@ -9,7 +9,7 @@ authors: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       10 
10 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
     | 
    
         
            -
            date: 2015-09- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2015-09-16 00:00:00.000000000 Z
         
     | 
| 
       13 
13 
     | 
    
         
             
            dependencies: []
         
     | 
| 
       14 
14 
     | 
    
         
             
            description: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            email:
         
     | 
| 
         @@ -62,6 +62,19 @@ files: 
     | 
|
| 
       62 
62 
     | 
    
         
             
            - spec/mysql2/statement_spec.rb
         
     | 
| 
       63 
63 
     | 
    
         
             
            - spec/rcov.opts
         
     | 
| 
       64 
64 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
      
 65 
     | 
    
         
            +
            - spec/ssl/ca-cert.pem
         
     | 
| 
      
 66 
     | 
    
         
            +
            - spec/ssl/ca-key.pem
         
     | 
| 
      
 67 
     | 
    
         
            +
            - spec/ssl/ca.cnf
         
     | 
| 
      
 68 
     | 
    
         
            +
            - spec/ssl/cert.cnf
         
     | 
| 
      
 69 
     | 
    
         
            +
            - spec/ssl/client-cert.pem
         
     | 
| 
      
 70 
     | 
    
         
            +
            - spec/ssl/client-key.pem
         
     | 
| 
      
 71 
     | 
    
         
            +
            - spec/ssl/client-req.pem
         
     | 
| 
      
 72 
     | 
    
         
            +
            - spec/ssl/gen_certs.sh
         
     | 
| 
      
 73 
     | 
    
         
            +
            - spec/ssl/pkcs8-client-key.pem
         
     | 
| 
      
 74 
     | 
    
         
            +
            - spec/ssl/pkcs8-server-key.pem
         
     | 
| 
      
 75 
     | 
    
         
            +
            - spec/ssl/server-cert.pem
         
     | 
| 
      
 76 
     | 
    
         
            +
            - spec/ssl/server-key.pem
         
     | 
| 
      
 77 
     | 
    
         
            +
            - spec/ssl/server-req.pem
         
     | 
| 
       65 
78 
     | 
    
         
             
            - spec/test_data
         
     | 
| 
       66 
79 
     | 
    
         
             
            - support/libmysql.def
         
     | 
| 
       67 
80 
     | 
    
         
             
            - support/mysql_enc_to_ruby.rb
         
     | 
| 
         @@ -119,4 +132,17 @@ test_files: 
     | 
|
| 
       119 
132 
     | 
    
         
             
            - spec/mysql2/statement_spec.rb
         
     | 
| 
       120 
133 
     | 
    
         
             
            - spec/rcov.opts
         
     | 
| 
       121 
134 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
      
 135 
     | 
    
         
            +
            - spec/ssl/ca-cert.pem
         
     | 
| 
      
 136 
     | 
    
         
            +
            - spec/ssl/ca-key.pem
         
     | 
| 
      
 137 
     | 
    
         
            +
            - spec/ssl/ca.cnf
         
     | 
| 
      
 138 
     | 
    
         
            +
            - spec/ssl/cert.cnf
         
     | 
| 
      
 139 
     | 
    
         
            +
            - spec/ssl/client-cert.pem
         
     | 
| 
      
 140 
     | 
    
         
            +
            - spec/ssl/client-key.pem
         
     | 
| 
      
 141 
     | 
    
         
            +
            - spec/ssl/client-req.pem
         
     | 
| 
      
 142 
     | 
    
         
            +
            - spec/ssl/gen_certs.sh
         
     | 
| 
      
 143 
     | 
    
         
            +
            - spec/ssl/pkcs8-client-key.pem
         
     | 
| 
      
 144 
     | 
    
         
            +
            - spec/ssl/pkcs8-server-key.pem
         
     | 
| 
      
 145 
     | 
    
         
            +
            - spec/ssl/server-cert.pem
         
     | 
| 
      
 146 
     | 
    
         
            +
            - spec/ssl/server-key.pem
         
     | 
| 
      
 147 
     | 
    
         
            +
            - spec/ssl/server-req.pem
         
     | 
| 
       122 
148 
     | 
    
         
             
            - spec/test_data
         
     |