Commit Graph

55 Commits

Author SHA1 Message Date
zhenglixin 9e5a241622 Update xmldsig.go 2017-02-18 18:12:57 +08:00
zhenglixin ccd046e860 Update signature.go 2017-02-18 18:04:59 +08:00
Ross Kinder 1aa2f9374a Merge pull request #11 from timou/master
Fix breakages on Fedora 25
2017-01-16 08:20:12 -05:00
Tim Ebringer 9a878d8e76 Fix breakages on Fedora 25
On Fedora 25, tests fail with error

  func=xmlSecCryptoAppInit:file=app.c:line=1423:
  obj=unknown:subj=cryptoAppInit:error=9:
  feature is not implemented:
  panic: xmlsec crypto initialization failed.

This appears to be because the pkg-config files set the wrong
CFLAGS defines for cgo, which results in runtime breakage
beacuse OpenSSL isn't properly loaded.

In order to fix how Fedora sets up these packages we want defines
XMLSEC_CRYPTO_OPENSSL set, XMLSEC_CRYPTO_DYNAMIC_LOADING unset
and we want to force linking with xmlsec1-openssl. This change
puts these in cgo directives.

We also fix a test which now has some off-by-one line number
changes in the error message.
2017-01-15 15:59:04 -05:00
Ross Kinder 383e4f2c19 implement native xmlenc decrypt function 2016-12-29 11:13:34 -05:00
Ross Kinder e02213cf99 add license
fixes #9
2016-11-14 08:54:23 -05:00
Ross Kinder 4c0831706e drop support for go 1.5 2016-10-20 20:23:33 -04:00
Ross Kinder 0c3950cf18 static build: openssl version bump 2016-10-20 20:21:00 -04:00
Ross Kinder bc5580d29d use a specific version of ubuntu for static build 2016-10-20 20:20:38 -04:00
Ross Kinder 31c57ffee3 fix go vet complaints 2016-09-03 19:38:58 -04:00
Ross Kinder 154d6b93c0 fix non-static dockerfile 2016-09-03 19:37:55 -04:00
Ross Kinder db09fcec31 support and describe building static binaries 2016-09-03 19:31:03 -04:00
Ross Kinder 176078f607 update readme, pkg-config is needed on darwin 2016-09-03 10:49:43 -04:00
Ross Kinder c83ad820f9 run travis against go 1.7 2016-09-03 10:49:24 -04:00
Ross Kinder 760a575a8a silence warnings on gcc/linux 2016-09-03 10:47:24 -04:00
Ross Kinder e61c00c496 silence warnings on gcc/linux 2016-09-03 10:46:08 -04:00
Ross Kinder 607d9cc53c add cgo flag to (finally!) silence build time warnings 2016-09-03 10:42:39 -04:00
Ross Kinder 6c0b1932d3 test with go 1.6 2016-02-19 10:33:37 -05:00
Ross Kinder 2ab6245e33 initialize libxml error capture when we start processing XML on each thread. 2015-12-23 18:54:11 -05:00
Ross Kinder dc37ddb368 capture errors from libxml2
fixes #4
2015-12-23 17:18:02 -05:00
Ross Kinder c095422255 get rid of un-idiomatic []byte(C.GoStringN(…)) and instead use C.GoBytes() 2015-12-23 15:15:50 -05:00
Ross Kinder 6113cc3d6f get rid of hacky newDoc2() 2015-12-23 15:09:37 -05:00
Ross Kinder 67af552ad1 move all invocations of CString to globals where the fact that it leaks memory doesn’t matter
bug #5
2015-12-23 15:08:21 -05:00
Ross Kinder 064bef37e7 cleanup: add/fix comments 2015-12-23 14:44:38 -05:00
Ross Kinder 25d9ec2994 update readme 2015-12-23 14:26:26 -05:00
Ross Kinder 5b03fd7e58 travis: install golint 2015-12-23 14:15:16 -05:00
Ross Kinder b31c1472a0 clean up, add documentation, fix lint errors 2015-12-23 14:11:29 -05:00
Ross Kinder 9cc70cf455 generalize expected error messages from libxmlsec 2015-12-23 12:09:17 -05:00
Ross Kinder cccbc3e05b fix getting the current thread on linux & mac 2015-12-23 12:07:04 -05:00
Ross Kinder b390a3e30a progress: enable xmldsig and do other cleanups 2015-12-23 11:31:54 -05:00
Ross Kinder 45f8aa9eeb refactor:
- merge xmldsig and xmlenc into a single package
- implement thread-safe error capture
- implement encryption using libxmlsec, discarding the go implementation
2015-12-23 10:47:07 -05:00
Ross Kinder 004226098f remove coveralls (it doesn't work/isn't worth it right now) 2015-11-30 20:46:02 -05:00
Ross Kinder 9f3ed8331d add coveralls trigger 2015-11-30 20:38:16 -05:00
Ross Kinder dcd29e8f67 xmlenc: add tests 2015-11-30 20:35:34 -05:00
Ross Kinder ded02b064c xmldsig: switch to using gocheck and add tests 2015-11-30 20:14:58 -05:00
Ross Kinder 7f65c2aa7b xmldsig: add test that we can handle XMLID properly for SAML 2015-11-30 19:16:24 -05:00
Ross Kinder 3564a0cc1c xmlenc: clear up the confusion about padding bytes and add tests for them 2015-11-30 19:16:01 -05:00
Ross Kinder 1f562a8ad1 update example 2015-11-30 16:53:20 -05:00
Ross Kinder b0917aaed7 update README 2015-11-30 16:50:15 -05:00
Ross Kinder f0631d11c8 xmlenc: Decrypt(): return the plaintext directly, don’t modify the source document. 2015-11-30 16:49:52 -05:00
Ross Kinder a4571e8fd9 add support for specifying xml:id 2015-11-30 16:45:21 -05:00
Ross Kinder af25076327 xmlenc: update test expectations for [83e3403ae1] 2015-11-30 15:37:51 -05:00
Ross Kinder eb87bfef60 xmldsig: merge newContext into Sign() because that is the only caller, simplify implementation 2015-11-30 15:36:00 -05:00
Ross Kinder 83e3403ae1 xmlenc: strip weird trailing 0x01 byte found in SAML responses when decrypting (HACK) 2015-11-30 15:31:17 -05:00
Ross Kinder c9c47bc396 xmldsig: add support for verifying signatures with a certificate (rather than the RSA private key) 2015-11-30 15:30:53 -05:00
Ross Kinder 720544b231 xmlenc: remove model.go which is not needed 2015-11-29 21:49:57 -05:00
Ross Kinder 84a6b8b42b xmlenc: add support for decryption 2015-11-29 21:49:26 -05:00
Ross Kinder 83593a6168 initial (broken) implementation of xmlenc 2015-10-21 15:07:57 -04:00
Ross Kinder ec5ce6bec4 fix style nit 2015-10-06 12:42:23 -04:00
Ross Kinder 9af32b3cac merge 2015-10-06 12:42:03 -04:00