Stef Walter [Sat, 1 Oct 2011 11:27:03 +0000 (13:27 +0200)]
gcr: Check that secret exchanged data has correct protocol prefix
* This is for future backward compatibility, so when we have more
than one protocol, we can be sure we can identify the old one.
Stef Walter [Sat, 1 Oct 2011 11:17:17 +0000 (13:17 +0200)]
gcr: Documentation fixes for secret exchange commits
Stef Walter [Sat, 1 Oct 2011 11:07:38 +0000 (13:07 +0200)]
ui: Use GcrSecretExchange for passing passwords to/from prompt
* And integrate this with our credential stuff inside of the
dbus secret service prompts
* Fix a bug in GcrSecretService if key already derived, and data
is received.
Stef Walter [Sat, 1 Oct 2011 10:20:07 +0000 (12:20 +0200)]
gcr: More work on the GcrSecretExchange
* Expose the concept of which protocol is being used although
currently only one is supported.
* Add virtual method hooks so all crypto stuff can be swapped
out with other implementations.
* Build, documentation and test fixes
https://bugzilla.gnome.org/show_bug.cgi?id=656955
Stef Walter [Tue, 23 Aug 2011 07:56:02 +0000 (09:56 +0200)]
gcr: Add documentation for GcrSecretExchange
https://bugzilla.gnome.org/show_bug.cgi?id=656955
Stef Walter [Sat, 20 Aug 2011 20:50:42 +0000 (22:50 +0200)]
gcr: Refactor GcrSecretExchange
* Use the GcrSecretExchange object on both sides.
* Allow exchange of multiple secrets, and in both directions.
* Add tests
Stef Walter [Wed, 10 Aug 2011 08:58:37 +0000 (10:58 +0200)]
gcr: Implement GcrSecretExchange
* Class which allows exchanging secrets over an unsecure or logged
channel.
* Does *NOT* protect against active attacks like MITM.
https://bugzilla.gnome.org/show_bug.cgi?id=656955
Stef Walter [Sat, 1 Oct 2011 09:56:20 +0000 (11:56 +0200)]
gcr: More documentation fixes
Stef Walter [Sat, 1 Oct 2011 09:55:31 +0000 (11:55 +0200)]
Fix up exported symbols for recent changes
* Including one symbol removal, but since this was added during
this unstable cycle, no problem changing it.
Stef Walter [Fri, 30 Sep 2011 07:50:39 +0000 (09:50 +0200)]
gck: Fix more argument types
* and mark up introspection annotations on some more arrays
Stef Walter [Thu, 29 Sep 2011 14:28:10 +0000 (16:28 +0200)]
gck: More introspection tweaks, checking for parameters which allow none
Stef Walter [Thu, 29 Sep 2011 13:31:00 +0000 (15:31 +0200)]
gcr: Annotate which types are being returned
* If the C function is returning a base type, then annotate
what derived type is actually being returned.
Stef Walter [Thu, 29 Sep 2011 13:29:11 +0000 (15:29 +0200)]
gcr: Add gcr_viewer_widget_get_parser()
* This property returns the parser currently in use by the viewer widget
Stef Walter [Thu, 29 Sep 2011 13:26:36 +0000 (15:26 +0200)]
gck: Fix precondition in gck_object_from_handles
Stef Walter [Thu, 29 Sep 2011 13:03:39 +0000 (15:03 +0200)]
gcr: More introspection and documentation cleanup
* Tag proper transfer on return values
* Use guchar * for arrays of bytes
Stef Walter [Thu, 29 Sep 2011 13:02:46 +0000 (15:02 +0200)]
gck: More introspection and documentation cleanup
* In particular, use guchar * for arrays of bytes.
Stef Walter [Thu, 29 Sep 2011 11:06:13 +0000 (13:06 +0200)]
gck: Fix if _gck_debug was not called _gck_debugging doesn't work
* Initialize debugging in both _gck_debug and _gck_debugging
Stef Walter [Thu, 29 Sep 2011 10:49:17 +0000 (12:49 +0200)]
gck: Documentation, introspection, and header fixes
Stef Walter [Thu, 29 Sep 2011 08:07:06 +0000 (10:07 +0200)]
gck: Work around g-ir-scanner syntax problem
* Separate typedef from structure declaration.
Stef Walter [Thu, 29 Sep 2011 08:06:41 +0000 (10:06 +0200)]
Gck: GckAttribute value field is a byte array
Stef Walter [Thu, 29 Sep 2011 08:02:16 +0000 (10:02 +0200)]
gck: Gck introspection doesn't depend on gtk
Stef Walter [Wed, 28 Sep 2011 12:26:14 +0000 (14:26 +0200)]
gcr: Complete introspection annotations for gcr library
https://bugzilla.gnome.org/show_bug.cgi?id=655651
Stef Walter [Wed, 28 Sep 2011 12:24:43 +0000 (14:24 +0200)]
gck: Fix introspection warnings and complete introspection annotations
https://bugzilla.gnome.org/show_bug.cgi?id=655651
Evan Nemerson [Sat, 30 Jul 2011 19:32:59 +0000 (12:32 -0700)]
gcr: mark many fields as private
Evan Nemerson [Sat, 30 Jul 2011 19:31:49 +0000 (12:31 -0700)]
gcr: add GObject introspection support
https://bugzilla.gnome.org/show_bug.cgi?id=655651
Stef Walter [Tue, 27 Sep 2011 15:40:12 +0000 (17:40 +0200)]
gcr: Fix logic in GcrImportButton when unlocking is going on (again)
Stef Walter [Tue, 27 Sep 2011 17:25:39 +0000 (19:25 +0200)]
gcr: More deprecation tweaking so we can build on FC16
Stef Walter [Tue, 27 Sep 2011 15:32:48 +0000 (17:32 +0200)]
gcr: Fix logic in GcrImportButton when unlocking is going on
* Don't show the spinner when no importers are ready even though
initializing
Stef Walter [Tue, 27 Sep 2011 15:32:02 +0000 (17:32 +0200)]
gcr: Fix problem with unlock prompt
* Signal handling of the authenticate was in the wrong order.
Stef Walter [Tue, 27 Sep 2011 15:12:02 +0000 (17:12 +0200)]
gcr: Fix documentation, abi, and translation issues
Stef Walter [Tue, 27 Sep 2011 14:47:37 +0000 (16:47 +0200)]
gcr: Fix invalid memory access in _gcr_record_set_base64
Stef Walter [Tue, 27 Sep 2011 13:53:35 +0000 (15:53 +0200)]
gcr: Use correct icon in the PKCS#11 importer
Stef Walter [Tue, 27 Sep 2011 13:48:39 +0000 (15:48 +0200)]
gcr: Refactor GcrParser and delay listing of importers
* PKCS#11 takes a long time to initialize with certain smart cards
(several seconds). So we can't block the UI.
* Expose the PKCS#11 initialization functions publicly.
* Refactor GcrParser so that the current parsed item can be held
around until later in the form of a GcrParsed structure.
* Queue parsed items in GcrImportButton until PKCS#11 is initialized.
Stef Walter [Tue, 27 Sep 2011 13:44:11 +0000 (15:44 +0200)]
gcr: Add GcrSingleCollection internal class
Stef Walter [Fri, 23 Sep 2011 10:43:25 +0000 (12:43 +0200)]
gcr: Show warnings about keys that have not been verified
* And emblem icons that have not been verified.
Stef Walter [Thu, 22 Sep 2011 19:25:59 +0000 (21:25 +0200)]
gcr: Fixes for the import button and viewer widget
* Update the button before anything queued.
* Fix viewer widget arguments
Stef Walter [Thu, 22 Sep 2011 19:25:46 +0000 (21:25 +0200)]
gcr: Distribute new headers properly.
Stef Walter [Thu, 22 Sep 2011 15:07:17 +0000 (17:07 +0200)]
gcr: Fix up documentation images
Stef Walter [Thu, 22 Sep 2011 14:59:17 +0000 (16:59 +0200)]
gcr: Complete GcrViewerWidget and GcrImportButton
* Cleanup documentation
* Rework how the GcrViewerWindow works so that it can be used
elsewhere.
* Create GcrImportButton which can import certificates and widgets.
Stef Walter [Thu, 22 Sep 2011 06:11:44 +0000 (08:11 +0200)]
gcr: Fix up documentation for importer and menu button
Stef Walter [Wed, 21 Sep 2011 15:13:27 +0000 (17:13 +0200)]
gcr: Implement GcrMenuButton which is copied from gnome-contacts
* The standard clickable button which drops down a menu.
Stef Walter [Wed, 21 Sep 2011 11:55:51 +0000 (13:55 +0200)]
gcr: Refactor the importer with multiple registered importers
* Allow multiple importers to register, and have a way for
them to identify whether something is importable by the
importer or not.
* Create a new GnuPG keyring importer.
* Add boxed type for a GList of GObject
* Some other minor cleanups.
Stef Walter [Tue, 20 Sep 2011 09:56:20 +0000 (11:56 +0200)]
gcr: Add Renderer for Gnupg keys
* Uses the colon style GcrRecord data to render gnupg key.
Stef Walter [Fri, 16 Sep 2011 10:29:58 +0000 (12:29 +0200)]
gcr: Implement parsing of openpgp packet contents into records.
* Also centralize our timegm() implementation for dumb OS's.
* Add tests for openpgp packet parsing
* Produces with-colons format in the gnupg style, slight differences
but not incompatible.
Stef Walter [Wed, 14 Sep 2011 09:52:24 +0000 (11:52 +0200)]
gcr: Implement input for GcrGnupgProcess
* Use io streams for input and output
Stef Walter [Wed, 14 Sep 2011 06:34:12 +0000 (08:34 +0200)]
gcr: GcrParser now reports current format for block parsed
* The current format represents the inner most block
* Refactor GcrParser so that we can accurately track the state of
the parsed items when multiple functions contribute to that state.
Stef Walter [Tue, 13 Sep 2011 15:07:28 +0000 (17:07 +0200)]
gcr: Implement recognizing of OpenPGP packets
* Doesn't actually parse keys or anything else about OpenPGP (yet).
* Generalize the PEM code so that it works for PGP armor.
Stef Walter [Tue, 13 Sep 2011 06:04:41 +0000 (08:04 +0200)]
gcr: Implement OpenSSH public key parser
* And add tests for various formats.
Stef Walter [Mon, 12 Sep 2011 14:58:03 +0000 (16:58 +0200)]
egg: Add decoder for decimal data, analogous to the hex decoder.
Stef Walter [Tue, 27 Sep 2011 07:19:49 +0000 (09:19 +0200)]
gcr: Remove stock icon code, add gcr_icon_for_token_info()
* gcr-icons.h is public
* Remove old stock icon code, and use themed icons properly
* Add gcr_icon_for_token_info() function which looks up an
appropriate icon for a token.
Stef Walter [Tue, 27 Sep 2011 07:19:18 +0000 (09:19 +0200)]
gcr: Compatiblity fix for glib 2.28.x
Stef Walter [Fri, 23 Sep 2011 15:18:45 +0000 (17:18 +0200)]
gcr: Add icons for smart card
* Copy a bit of infrastructure from gnome-icon-theme
https://bugzilla.gnome.org/show_bug.cgi?id=659951
Stef Walter [Mon, 26 Sep 2011 20:05:21 +0000 (22:05 +0200)]
gcr: Fix for more glib deprecations
Stef Walter [Mon, 26 Sep 2011 13:40:34 +0000 (15:40 +0200)]
Merge branch 'introspect-nodes'
Stef Walter [Mon, 26 Sep 2011 13:22:49 +0000 (15:22 +0200)]
Rework configure build options based on recent mailing list posts
* --enable-strict to enable -Werror, fatal warnings and disable
deprecations
* --disable-debug to G_DISABLE_ASSERT
* default debug for -g, WITH_DEBUG
* --enable-debug to -OO
Stef Walter [Mon, 26 Sep 2011 09:58:33 +0000 (11:58 +0200)]
Split the gcr library into base and ui components.
* Different pkg-config files gcr-3.pc and gcr-base-3.pc
* The base library doesn't link to GTK+ or anything that
is used in the UI. It can be used by non-ui programs.
Stef Walter [Mon, 26 Sep 2011 09:47:56 +0000 (11:47 +0200)]
Merge branch 'gnome-3-2'
Stef Walter [Wed, 21 Sep 2011 12:31:31 +0000 (14:31 +0200)]
Update symbols files for recently added API.
Stef Walter [Mon, 19 Sep 2011 20:04:32 +0000 (22:04 +0200)]
Fix pkcs11 related pkg-config variables and build output.
* These were accidentally missed in earlier commits related
to p11-kit 0.6
Stef Walter [Mon, 19 Sep 2011 07:39:28 +0000 (09:39 +0200)]
Merge branch 'track-memory'
Stef Walter [Mon, 19 Sep 2011 07:38:10 +0000 (09:38 +0200)]
gck: Documentation fix
Stef Walter [Mon, 19 Sep 2011 07:36:43 +0000 (09:36 +0200)]
Merge branch 'sort-values'
Bastien Nocera [Sat, 17 Sep 2011 19:08:36 +0000 (20:08 +0100)]
build: Fix parallel compilation
We need to tell Makefile how to generate gcr-oids.h
Andre Klapper [Tue, 13 Sep 2011 10:40:33 +0000 (12:40 +0200)]
Change online URL from library.g.o to developer.g.o
Stef Walter [Mon, 12 Sep 2011 10:21:05 +0000 (12:21 +0200)]
gcr: Accept slightly invalid PKCS#12 files
* In particular when the order of a SET OF is incorrect as is generated
by certain implementations.
* Revert
cbecc802e8cf5803aac9fbd3c546b539773220b2 since this fix was
wrong.
* Add egg_asn1x_decode_no_validate() so that callers can validate on
their own and specify validation options.
Stef Walter [Mon, 12 Sep 2011 10:20:19 +0000 (12:20 +0200)]
gcr: Verify PKCS#12 MAC
* This also has the nice effect of sanifying the prompting for unlock
passwords for PKCS#12 file, since it's done by the parser before
looking inside the various parts of the file.
Stef Walter [Mon, 12 Sep 2011 08:14:38 +0000 (10:14 +0200)]
gcr: Fix memory leak while parsing PKCS#8 encrypted keys.
Stef Walter [Mon, 12 Sep 2011 08:13:20 +0000 (10:13 +0200)]
egg: Fix issue generating PKCS#12 symkey from password
* If the key needed was longer than the hash size we would
generate the incorrect key.
* Right align the calculated number correctly in the buffer
Stef Walter [Mon, 12 Sep 2011 08:12:03 +0000 (10:12 +0200)]
egg: Fix ASN.1 issues validating order of SETOF
* Compare just the value, rather than the entire TLV
* This fixes some corner cases parsing PKCS#12 files
Stef Walter [Thu, 14 Oct 2010 19:38:39 +0000 (19:38 +0000)]
Secure memory tagging
* Tag all secure memory with strings, and print out diagnostic
report of what's in use, upon request.
Stef Walter [Sat, 10 Sep 2011 05:57:14 +0000 (07:57 +0200)]
Fix typo in GcrUnlockRenderer
https://bugzilla.gnome.org/show_bug.cgi?id=658668
Stef Walter [Fri, 9 Sep 2011 12:54:32 +0000 (14:54 +0200)]
gck: Add functions for matching uri to modules and tokens
Stef Walter [Fri, 9 Sep 2011 10:22:06 +0000 (12:22 +0200)]
gcr: Add gcr_union_collection_have() and gcr_union_collection_size()
* Used to check wether a collection is part of the union.
Stef Walter [Wed, 7 Sep 2011 14:14:24 +0000 (16:14 +0200)]
gcr: Fix extra object reference in gcr_union_collection_take()
Stef Walter [Wed, 7 Sep 2011 14:14:08 +0000 (16:14 +0200)]
gcr: Fix null pointer dereference when finalizing GcrCollectionModel
Travis Reitter [Tue, 6 Sep 2011 13:28:44 +0000 (15:28 +0200)]
gcr: Fix gcr-viewer build errors
https://bugzilla.gnome.org/show_bug.cgi?id=658319
Rodrigo Moya [Tue, 6 Sep 2011 08:43:14 +0000 (10:43 +0200)]
gcr: Fix linking of gcr-viewer
https://bugzilla.gnome.org/show_bug.cgi?id=658249
Stef Walter [Tue, 6 Sep 2011 13:21:07 +0000 (15:21 +0200)]
gcr: Add GcrUnionCollection class
* A GcrCollection which combines the contents of other collections
into a single collection.
Stef Walter [Mon, 5 Sep 2011 14:08:58 +0000 (16:08 +0200)]
gcr: gcr_collection_model_set_columns() now returns number of columns
* Return the number of real columns added (not including the
possible selected column).
* Fix several crashers in GcrCollectionModel as well.
Stef Walter [Mon, 5 Sep 2011 14:08:26 +0000 (16:08 +0200)]
gcr: Add gcr_collection_model_get_collection()
* A way to get the collection that collection model is based on.
Stef Walter [Mon, 5 Sep 2011 14:03:36 +0000 (16:03 +0200)]
gcr: Add gcr_collection_contains() as a virtual interface method.
* And deprecate gcr_simple_collection_contains()
* This is because this method is hard to implement at a higher layer
efficiently, and the collection itself needs to get involved.
Stef Walter [Fri, 2 Sep 2011 19:10:06 +0000 (21:10 +0200)]
gcr: Add support for GcrCollectionModel to have child rows
* A child row is represented by an object that implements the
GcrCollection
Stef Walter [Fri, 2 Sep 2011 14:50:31 +0000 (16:50 +0200)]
gcr: Add GtkTreeSortable interface to GcrCollectionModel
* Can now sort based on values, which simplifies callers of
GcrCollectionModel.
* Needed for use in seahorse.
Kalev Lember [Wed, 31 Aug 2011 20:51:48 +0000 (23:51 +0300)]
gcr: Don't update the MIME database if DESTDIR is set
This way the configure defaults work for binary distributions and they
don't need to pass --disable-update-mime to configure.
https://bugzilla.gnome.org/show_bug.cgi?id=657871
Frédéric Péters [Sat, 3 Sep 2011 22:45:49 +0000 (00:45 +0200)]
build: install gcr-viewer-window.h header file
https://bugzilla.gnome.org/show_bug.cgi?id=658147
Stef Walter [Fri, 2 Sep 2011 11:43:49 +0000 (13:43 +0200)]
gcr: Stop parsing PKCS#12 bag if locked
* This allows GcrUnlockRenderer to work correctly for certain
types of PKCS#12 files it was screwing up on before.
Stef Walter [Fri, 2 Sep 2011 11:43:13 +0000 (13:43 +0200)]
gcr: Proper flags for GcrColumnFlags
* Include GCR_COLUMN_NONE
* Use << instead of hex numbers
Stef Walter [Thu, 1 Sep 2011 11:39:54 +0000 (13:39 +0200)]
gcr: Add support for getting friendly name out of a PKCS#12 file.
Stef Walter [Thu, 1 Sep 2011 10:50:01 +0000 (12:50 +0200)]
gcr: Support multiple items inside a PKCS#12 bag.
* This is how (at least) openssl sends along additional certs in
a PKCS#12 file.
* Create a new file personal.p12 to test this.
Stef Walter [Thu, 1 Sep 2011 10:10:40 +0000 (12:10 +0200)]
gcr: Use place holder text in viewer unlock prompt.
* Displays 'Password' in the box where the user types the password.
Stef Walter [Thu, 1 Sep 2011 09:29:49 +0000 (11:29 +0200)]
gcr: Documentation, testing and distcheck fixes
* Update symbols for new APIs
* Update docs with new APIs
* Change how tests find fixture files.
Stef Walter [Wed, 31 Aug 2011 19:06:43 +0000 (21:06 +0200)]
gcr: Expose correct outer block for PEM in GcrParser
Stef Walter [Wed, 31 Aug 2011 19:06:00 +0000 (21:06 +0200)]
egg: Make OpenSSL PEM routines return outer block as well.
* We expose this in GcrParser so that we can reparse a block that needs
a password.
Stef Walter [Wed, 31 Aug 2011 13:57:02 +0000 (15:57 +0200)]
gcr: Display errors in the gcr-viewer
* Add GcrFailureRenderer which shows errors with reason and icon
Stef Walter [Wed, 31 Aug 2011 13:30:58 +0000 (15:30 +0200)]
gcr: Add support for unlocking files in gcr-viewer
* Add a GcrRenderer which displays unlock widgets
* Add method to GcrViewer which allows insertion of renderer before another
* Functionality in GcrDisplayView for showing dialog like widgets in view
* Fixes for removing renderer from view
* Parser fixes for enabling all formats
* Parser fixes for PKCS#12 parsing with locked data
Stef Walter [Thu, 25 Aug 2011 14:50:03 +0000 (16:50 +0200)]
gcr: Support get surrounding data block from GcrParser
* This is needed for importing parsed data into other places
than PKCS#11 tokens.
* Going to use this in seahorse.
Stef Walter [Thu, 25 Aug 2011 14:34:25 +0000 (16:34 +0200)]
gcr: Test GcrParser with null and empty data
Stef Walter [Thu, 25 Aug 2011 14:19:22 +0000 (16:19 +0200)]
gcr: Refactor the parser tests
* Make one test per file, and give them descriptive names.
* Make the tests quieter as well.
Friedel Wolff [Wed, 31 Aug 2011 08:00:18 +0000 (10:00 +0200)]
Typo in translatable string
https://bugzilla.gnome.org/show_bug.cgi?id=656599
Stef Walter [Wed, 31 Aug 2011 07:36:01 +0000 (09:36 +0200)]
gck: Fix tests for new PKCS#11 URI revesion
* Some of the attribute names changed to include dashes