diff options
author | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2014-04-26 02:12:46 +0800 |
---|---|---|
committer | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2014-04-26 02:12:46 +0800 |
commit | dfc30719d9758d9e6b3e06963e4bf5175ae16825 (patch) | |
tree | 3c84ec64b1dd1a9a2618a75efa664a18033890bd /security | |
parent | d0d9889c61e774a633eda7b5bce0688ca50d1ac8 (diff) | |
download | marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.tar marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.tar.gz marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.tar.bz2 marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.tar.lz marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.tar.xz marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.tar.zst marcuscom-ports-dfc30719d9758d9e6b3e06963e4bf5175ae16825.zip |
Update MC-ports to GNOME 3.12.
Dragons beware! Although most of them should be sleeping.
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@19571 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'security')
44 files changed, 234 insertions, 4163 deletions
diff --git a/security/gcr/Makefile b/security/gcr/Makefile index c2fd85ed5..2bdb7b3dc 100644 --- a/security/gcr/Makefile +++ b/security/gcr/Makefile @@ -3,14 +3,15 @@ # $MCom$ PORTNAME= gcr -PORTVERSION= 3.6.2 +PORTVERSION= 3.12.0 CATEGORIES= security gnome MASTER_SITES= GNOME MAINTAINER= kwm@FreeBSD.org COMMENT= Library for bits of crypto UI and parsing -BUILD_DEPENDS= gtk-doc>0:${PORTSDIR}/textproc/gtk-doc +BUILD_DEPENDS= gtk-doc>0:${PORTSDIR}/textproc/gtk-doc \ + vapigen:${PORTSDIR}/lang/vala-vapigen LIB_DEPENDS= libdbus-1.so:${PORTSDIR}/devel/dbus \ libtasn1.so:${PORTSDIR}/security/libtasn1 \ libp11-kit.so:${PORTSDIR}/security/p11-kit \ @@ -18,10 +19,9 @@ LIB_DEPENDS= libdbus-1.so:${PORTSDIR}/devel/dbus \ CONFLICTS= gnome-keyring-2.[0-9]* -USE_XZ= yes -USE_GNOME= gtk30 intlhack introspection:build -USES= desktop-file-utils gettext gmake pathfix pkgconfig \ - shared-mime-info +USE_GNOME= gtk30 gnomehier intlhack introspection:build +USES= desktop-file-utils gettext gmake libtool pathfix pkgconfig \ + shared-mime-info tar:xz GNU_CONFIGURE= yes USE_LDCONFIG= yes INSTALLS_ICONS= yes diff --git a/security/gcr/distinfo b/security/gcr/distinfo index 2f6a07578..c066a175c 100644 --- a/security/gcr/distinfo +++ b/security/gcr/distinfo @@ -1,2 +1,2 @@ -SHA256 (gcr-3.6.2.tar.xz) = f709db2435e3635b68d8aa212863e0a8e81b1cc33442852a5183762876c7be9b -SIZE (gcr-3.6.2.tar.xz) = 1365124 +SHA256 (gcr-3.12.0.tar.xz) = 9d561d0b0a43aaad55fc1d464b3ee3e1687a5021e444f1bbdce3ae624518de77 +SIZE (gcr-3.12.0.tar.xz) = 1335728 diff --git a/security/gcr/files/patch-egg_egg-secure-memory.c b/security/gcr/files/patch-egg_egg-secure-memory.c deleted file mode 100644 index 1f64ec729..000000000 --- a/security/gcr/files/patch-egg_egg-secure-memory.c +++ /dev/null @@ -1,959 +0,0 @@ ---- egg/egg-secure-memory.c.orig Wed Sep 19 11:01:27 2012 -+++ egg/egg-secure-memory.c Sat Oct 27 14:41:49 2012 -@@ -22,8 +22,8 @@ - */ - - /* -- * IMPORTANT: This is pure vanila standard C, no glib. We need this -- * because certain consumers of this protocol need to be built -+ * IMPORTANT: This is pure vanila standard C, no glib. We need this -+ * because certain consumers of this protocol need to be built - * without linking in any special libraries. ie: the PKCS#11 module. - */ - -@@ -48,8 +48,8 @@ - - #define DEBUG_SECURE_MEMORY 0 - --#if DEBUG_SECURE_MEMORY --#define DEBUG_ALLOC(msg, n) fprintf(stderr, "%s %lu bytes\n", msg, n); -+#if DEBUG_SECURE_MEMORY -+#define DEBUG_ALLOC(msg, n) fprintf(stderr, "%s %lu bytes\n", msg, n); - #else - #define DEBUG_ALLOC(msg, n) - #endif -@@ -59,8 +59,8 @@ - /* Use our own assert to guarantee no glib allocations */ - #ifndef ASSERT - #ifdef G_DISABLE_ASSERT --#define ASSERT(x) --#else -+#define ASSERT(x) -+#else - #define ASSERT(x) assert(x) - #endif - #endif -@@ -74,18 +74,18 @@ - static int show_warning = 1; - int egg_secure_warnings = 1; - --/* -- * We allocate all memory in units of sizeof(void*). This -+/* -+ * We allocate all memory in units of sizeof(void*). This - * is our definition of 'word'. - */ - typedef void* word_t; - --/* The amount of extra words we can allocate */ -+/* The amount of extra words we can allocate */ - #define WASTE 4 - --/* -- * Track allocated memory or a free block. This structure is not stored -- * in the secure memory area. It is allocated from a pool of other -+/* -+ * Track allocated memory or a free block. This structure is not stored -+ * in the secure memory area. It is allocated from a pool of other - * memory. See meta_pool_xxx (). - */ - typedef struct _Cell { -@@ -97,7 +97,7 @@ typedef struct _Cell { - struct _Cell *prev; /* Previous in memory ring */ - } Cell; - --/* -+/* - * A block of secure memory. This structure is the header in that block. - */ - typedef struct _Block { -@@ -130,20 +130,20 @@ unused_pop (void **stack) - ptr = *stack; - *stack = *(void**)ptr; - return ptr; -- -+ - } - - static inline void* - unused_peek (void **stack) - { - ASSERT (stack); -- return *stack; -+ return *stack; - } - - /* ----------------------------------------------------------------------------- - * POOL META DATA ALLOCATION -- * -- * A pool for memory meta data. We allocate fixed size blocks. There are actually -+ * -+ * A pool for memory meta data. We allocate fixed size blocks. There are actually - * two different structures stored in this pool: Cell and Block. Cell is allocated - * way more often, and is bigger so we just allocate that size for both. - */ -@@ -185,7 +185,7 @@ pool_alloc (void) - if (unused_peek (&pool->unused)) - break; - } -- -+ - /* Create a new pool */ - if (pool == NULL) { - len = getpagesize () * 2; -@@ -205,7 +205,7 @@ pool_alloc (void) - pool->n_items = (len - sizeof (Pool)) / sizeof (Item); - for (i = 0; i < pool->n_items; ++i) - unused_push (&pool->unused, pool->items + i); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_CREATE_MEMPOOL(pool, 0, 0); - #endif -@@ -227,9 +227,9 @@ pool_free (void* item) - { - Pool *pool, **at; - char *ptr, *beg, *end; -- -+ - ptr = item; -- -+ - /* Find which block this one belongs to */ - for (at = (Pool **)&EGG_SECURE_GLOBALS.pool_data, pool = *at; - pool != NULL; at = &pool->next, pool = *at) { -@@ -275,17 +275,17 @@ pool_valid (void* item) - { - Pool *pool; - char *ptr, *beg, *end; -- -+ - ptr = item; -- -+ - /* Find which block this one belongs to */ - for (pool = EGG_SECURE_GLOBALS.pool_data; pool; pool = pool->next) { - beg = (char*)pool->items; - end = (char*)pool + pool->length - sizeof (Item); -- if (ptr >= beg && ptr <= end) -+ if (ptr >= beg && ptr <= end) - return (pool->used && (ptr - beg) % sizeof (Item) == 0); - } -- -+ - return 0; - } - -@@ -293,9 +293,9 @@ pool_valid (void* item) - - /* ----------------------------------------------------------------------------- - * SEC ALLOCATION -- * -+ * - * Each memory cell begins and ends with a pointer to its metadata. These are also -- * used as guards or red zones. Since they're treated as redzones by valgrind we -+ * used as guards or red zones. Since they're treated as redzones by valgrind we - * have to jump through a few hoops before reading and/or writing them. - */ - -@@ -315,11 +315,11 @@ sec_write_guards (Cell *cell) - - ((void**)cell->words)[0] = (void*)cell; - ((void**)cell->words)[cell->n_words - 1] = (void*)cell; -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (cell->words, sizeof (word_t)); - VALGRIND_MAKE_MEM_NOACCESS (cell->words + cell->n_words - 1, sizeof (word_t)); --#endif -+#endif - } - - static inline void -@@ -327,16 +327,16 @@ sec_check_guards (Cell *cell) - { - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (cell->words, sizeof (word_t)); -- VALGRIND_MAKE_MEM_DEFINED (cell->words + cell->n_words - 1, sizeof (word_t)); --#endif -- -+ VALGRIND_MAKE_MEM_DEFINED (cell->words + cell->n_words - 1, sizeof (word_t)); -+#endif -+ - ASSERT(((void**)cell->words)[0] == (void*)cell); - ASSERT(((void**)cell->words)[cell->n_words - 1] == (void*)cell); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (cell->words, sizeof (word_t)); - VALGRIND_MAKE_MEM_NOACCESS (cell->words + cell->n_words - 1, sizeof (word_t)); --#endif -+#endif - } - - static void -@@ -347,9 +347,9 @@ sec_insert_cell_ring (Cell **ring, Cell *cell) - ASSERT (cell != *ring); - ASSERT (cell->next == NULL); - ASSERT (cell->prev == NULL); -- -- /* Insert back into the mix of available memory */ -- if (*ring) { -+ -+ /* Insert back into the mix of available memory */ -+ if (*ring) { - cell->next = (*ring)->next; - cell->prev = *ring; - cell->next->prev = cell; -@@ -358,7 +358,7 @@ sec_insert_cell_ring (Cell **ring, Cell *cell) - cell->next = cell; - cell->prev = cell; - } -- -+ - *ring = cell; - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); -@@ -391,7 +391,7 @@ sec_remove_cell_ring (Cell **ring, Cell *cell) - cell->next->prev = cell->prev; - cell->prev->next = cell->next; - cell->next = cell->prev = NULL; -- -+ - ASSERT (*ring != cell); - } - -@@ -440,10 +440,10 @@ static Cell* - sec_neighbor_before (Block *block, Cell *cell) - { - word_t *word; -- -+ - ASSERT (cell); - ASSERT (block); -- -+ - word = cell->words - 1; - if (!sec_is_valid_word (block, word)) - return NULL; -@@ -451,7 +451,7 @@ sec_neighbor_before (Block *block, Cell *cell) - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -- -+ - cell = *word; - sec_check_guards (cell); - -@@ -462,14 +462,14 @@ sec_neighbor_before (Block *block, Cell *cell) - return cell; - } - --static Cell* -+static Cell* - sec_neighbor_after (Block *block, Cell *cell) - { - word_t *word; -- -+ - ASSERT (cell); - ASSERT (block); -- -+ - word = cell->words + cell->n_words; - if (!sec_is_valid_word (block, word)) - return NULL; -@@ -480,7 +480,7 @@ sec_neighbor_after (Block *block, Cell *cell) - - cell = *word; - sec_check_guards (cell); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (word, sizeof (word_t)); - #endif -@@ -496,7 +496,7 @@ sec_alloc (Block *block, - Cell *cell, *other; - size_t n_words; - void *memory; -- -+ - ASSERT (block); - ASSERT (length); - ASSERT (tag); -@@ -504,16 +504,16 @@ sec_alloc (Block *block, - if (!block->unused_cells) - return NULL; - -- /* -- * Each memory allocation is aligned to a pointer size, and -+ /* -+ * Each memory allocation is aligned to a pointer size, and - * then, sandwidched between two pointers to its meta data. - * These pointers also act as guards. - * -- * We allocate memory in units of sizeof (void*) -+ * We allocate memory in units of sizeof (void*) - */ -- -+ - n_words = sec_size_to_words (length) + 2; -- -+ - /* Look for a cell of at least our required size */ - cell = block->unused_cells; - while (cell->n_words < n_words) { -@@ -523,7 +523,7 @@ sec_alloc (Block *block, - break; - } - } -- -+ - if (!cell) - return NULL; - -@@ -532,7 +532,7 @@ sec_alloc (Block *block, - ASSERT (cell->prev); - ASSERT (cell->words); - sec_check_guards (cell); -- -+ - /* Steal from the cell if it's too long */ - if (cell->n_words > n_words + WASTE) { - other = pool_alloc (); -@@ -542,13 +542,13 @@ sec_alloc (Block *block, - other->words = cell->words; - cell->n_words -= n_words; - cell->words += n_words; -- -+ - sec_write_guards (other); - sec_write_guards (cell); -- -+ - cell = other; - } -- -+ - if (cell->next) - sec_remove_cell_ring (&block->unused_cells, cell); - -@@ -557,11 +557,11 @@ sec_alloc (Block *block, - cell->requested = length; - sec_insert_cell_ring (&block->used_cells, cell); - memory = sec_cell_to_memory (cell); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_UNDEFINED (memory, length); - #endif -- -+ - return memset (memory, 0, length); - } - -@@ -570,13 +570,13 @@ sec_free (Block *block, void *memory) - { - Cell *cell, *other; - word_t *word; -- -+ - ASSERT (block); - ASSERT (memory); -- -+ - word = memory; - --word; -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -@@ -600,39 +600,39 @@ sec_free (Block *block, void *memory) - /* Remove from the used cell ring */ - sec_remove_cell_ring (&block->used_cells, cell); - -- /* Find previous unallocated neighbor, and merge if possible */ -- other = sec_neighbor_before (block, cell); -- if (other && other->requested == 0) { -- ASSERT (other->tag == NULL); -- ASSERT (other->next && other->prev); -- other->n_words += cell->n_words; -- sec_write_guards (other); -- pool_free (cell); -- cell = other; -- } -- -- /* Find next unallocated neighbor, and merge if possible */ -- other = sec_neighbor_after (block, cell); -- if (other && other->requested == 0) { -- ASSERT (other->tag == NULL); -- ASSERT (other->next && other->prev); -- other->n_words += cell->n_words; -- other->words = cell->words; -- if (cell->next) -- sec_remove_cell_ring (&block->unused_cells, cell); -- sec_write_guards (other); -- pool_free (cell); -- cell = other; -- } -+ /* Find previous unallocated neighbor, and merge if possible */ -+ other = sec_neighbor_before (block, cell); -+ if (other && other->requested == 0) { -+ ASSERT (other->tag == NULL); -+ ASSERT (other->next && other->prev); -+ other->n_words += cell->n_words; -+ sec_write_guards (other); -+ pool_free (cell); -+ cell = other; -+ } - -- /* Add to the unused list if not already there */ -- if (!cell->next) -- sec_insert_cell_ring (&block->unused_cells, cell); -+ /* Find next unallocated neighbor, and merge if possible */ -+ other = sec_neighbor_after (block, cell); -+ if (other && other->requested == 0) { -+ ASSERT (other->tag == NULL); -+ ASSERT (other->next && other->prev); -+ other->n_words += cell->n_words; -+ other->words = cell->words; -+ if (cell->next) -+ sec_remove_cell_ring (&block->unused_cells, cell); -+ sec_write_guards (other); -+ pool_free (cell); -+ cell = other; -+ } - -- cell->tag = NULL; -- cell->requested = 0; -- --block->n_used; -- return NULL; -+ /* Add to the unused list if not already there */ -+ if (!cell->next) -+ sec_insert_cell_ring (&block->unused_cells, cell); -+ -+ cell->tag = NULL; -+ cell->requested = 0; -+ --block->n_used; -+ return NULL; - } - - static void -@@ -683,7 +683,7 @@ sec_realloc (Block *block, - /* Dig out where the meta should be */ - word = memory; - --word; -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -@@ -691,7 +691,7 @@ sec_realloc (Block *block, - ASSERT (sec_is_valid_word (block, word)); - ASSERT (pool_valid (*word)); - cell = *word; -- -+ - /* Validate that it's actually for real */ - sec_check_guards (cell); - ASSERT (cell->requested > 0); -@@ -710,17 +710,17 @@ sec_realloc (Block *block, - cell->requested = length; - alloc = sec_cell_to_memory (cell); - -- /* -+ /* - * Even though we may be reusing the same cell, that doesn't - * mean that the allocation is shrinking. It could have shrunk -- * and is now expanding back some. -- */ -+ * and is now expanding back some. -+ */ - if (length < valid) - sec_clear_undefined (alloc, length, valid); - - return alloc; - } -- -+ - /* Need braaaaaiiiiiinsss... */ - while (cell->n_words < n_words) { - -@@ -728,7 +728,7 @@ sec_realloc (Block *block, - other = sec_neighbor_after (block, cell); - if (!other || other->requested != 0) - break; -- -+ - /* Eat the whole neighbor if not too big */ - if (n_words - cell->n_words + WASTE >= other->n_words) { - cell->n_words += other->n_words; -@@ -745,7 +745,7 @@ sec_realloc (Block *block, - sec_write_guards (cell); - } - } -- -+ - if (cell->n_words >= n_words) { - cell->requested = length; - cell->tag = tag; -@@ -760,7 +760,7 @@ sec_realloc (Block *block, - memcpy_with_vbits (alloc, memory, valid); - sec_free (block, memory); - } -- -+ - return alloc; - } - -@@ -770,7 +770,7 @@ sec_allocated (Block *block, void *memory) - { - Cell *cell; - word_t *word; -- -+ - ASSERT (block); - ASSERT (memory); - -@@ -780,12 +780,12 @@ sec_allocated (Block *block, void *memory) - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -- -+ - /* Lookup the meta for this memory block (using guard pointer) */ - ASSERT (sec_is_valid_word (block, word)); - ASSERT (pool_valid (*word)); - cell = *word; -- -+ - sec_check_guards (cell); - ASSERT (cell->requested > 0); - ASSERT (cell->tag != NULL); -@@ -817,10 +817,10 @@ sec_validate (Block *block) - ASSERT (sec_is_valid_word (block, word)); - ASSERT (pool_valid (*word)); - cell = *word; -- -+ - /* Validate that it's actually for real */ - sec_check_guards (cell); -- -+ - /* Is it an allocated block? */ - if (cell->requested > 0) { - ASSERT (cell->tag != NULL); -@@ -829,7 +829,7 @@ sec_validate (Block *block) - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); - ASSERT (cell->requested <= (cell->n_words - 2) * sizeof (word_t)); -- -+ - /* An unused block */ - } else { - ASSERT (cell->tag == NULL); -@@ -838,7 +838,7 @@ sec_validate (Block *block) - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); - } -- -+ - word += cell->n_words; - if (word == last) - break; -@@ -855,7 +855,7 @@ sec_acquire_pages (size_t *sz, - { - void *pages; - unsigned long pgsize; -- -+ - ASSERT (sz); - ASSERT (*sz); - ASSERT (during_tag); -@@ -863,7 +863,7 @@ sec_acquire_pages (size_t *sz, - /* Make sure sz is a multiple of the page size */ - pgsize = getpagesize (); - *sz = (*sz + pgsize -1) & ~(pgsize - 1); -- -+ - #if defined(HAVE_MLOCK) - pages = mmap (0, *sz, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); - if (pages == MAP_FAILED) { -@@ -873,7 +873,7 @@ sec_acquire_pages (size_t *sz, - show_warning = 0; - return NULL; - } -- -+ - if (mlock (pages, *sz) < 0) { - if (show_warning && egg_secure_warnings && errno != EPERM) { - fprintf (stderr, "couldn't lock %lu bytes of memory (%s): %s\n", -@@ -883,12 +883,12 @@ sec_acquire_pages (size_t *sz, - munmap (pages, *sz); - return NULL; - } -- -+ - DEBUG_ALLOC ("gkr-secure-memory: new block ", *sz); -- -+ - show_warning = 1; - return pages; -- -+ - #else - if (show_warning && egg_secure_warnings) - fprintf (stderr, "your system does not support private memory"); -@@ -898,21 +898,21 @@ sec_acquire_pages (size_t *sz, - - } - --static void -+static void - sec_release_pages (void *pages, size_t sz) - { - ASSERT (pages); - ASSERT (sz % getpagesize () == 0); -- -+ - #if defined(HAVE_MLOCK) - if (munlock (pages, sz) < 0 && egg_secure_warnings) - fprintf (stderr, "couldn't unlock private memory: %s\n", strerror (errno)); -- -+ - if (munmap (pages, sz) < 0 && egg_secure_warnings) - fprintf (stderr, "couldn't unmap private anonymous memory: %s\n", strerror (errno)); -- -+ - DEBUG_ALLOC ("gkr-secure-memory: freed block ", sz); -- -+ - #else - ASSERT (FALSE); - #endif -@@ -924,7 +924,7 @@ sec_release_pages (void *pages, size_t sz) - - static Block *all_blocks = NULL; - --static Block* -+static Block* - sec_block_create (size_t size, - const char *during_tag) - { -@@ -950,7 +950,7 @@ sec_block_create (size_t size, - /* The size above is a minimum, we're free to go bigger */ - if (size < DEFAULT_BLOCK_SIZE) - size = DEFAULT_BLOCK_SIZE; -- -+ - block->words = sec_acquire_pages (&size, during_tag); - block->n_words = size / sizeof (word_t); - if (!block->words) { -@@ -958,11 +958,11 @@ sec_block_create (size_t size, - pool_free (cell); - return NULL; - } -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (block->words, size); - #endif -- -+ - /* The first cell to allocate from */ - cell->words = block->words; - cell->n_words = block->n_words; -@@ -972,7 +972,7 @@ sec_block_create (size_t size, - - block->next = all_blocks; - all_blocks = block; -- -+ - return block; - } - -@@ -985,7 +985,7 @@ sec_block_destroy (Block *block) - ASSERT (block); - ASSERT (block->words); - ASSERT (block->n_used == 0); -- -+ - /* Remove from the list */ - for (at = &all_blocks, bl = *at; bl; at = &bl->next, bl = *at) { - if (bl == block) { -@@ -993,7 +993,7 @@ sec_block_destroy (Block *block) - break; - } - } -- -+ - /* Must have been found */ - ASSERT (bl == block); - ASSERT (block->used_cells == NULL); -@@ -1004,7 +1004,7 @@ sec_block_destroy (Block *block) - sec_remove_cell_ring (&block->unused_cells, cell); - pool_free (cell); - } -- -+ - /* Release all pages of secure memory */ - sec_release_pages (block->words, block->n_words * sizeof (word_t)); - -@@ -1028,35 +1028,35 @@ egg_secure_alloc_full (const char *tag, - - if (length > 0xFFFFFFFF / 2) { - if (egg_secure_warnings) -- fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -- (unsigned long)length); -+ fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -+ (unsigned long)length); - return NULL; - } - - /* Can't allocate zero bytes */ - if (length == 0) - return NULL; -- -+ - DO_LOCK (); -- -+ - for (block = all_blocks; block; block = block->next) { - memory = sec_alloc (block, tag, length); - if (memory) -- break; -+ break; - } -- -+ - /* None of the current blocks have space, allocate new */ - if (!memory) { - block = sec_block_create (length, tag); - if (block) - memory = sec_alloc (block, tag, length); - } -- -+ - #ifdef WITH_VALGRIND - if (memory != NULL) - VALGRIND_MALLOCLIKE_BLOCK (memory, length, sizeof (void*), 1); - #endif -- -+ - DO_UNLOCK (); - - if (!memory && (flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback != NULL) { -@@ -1064,10 +1064,10 @@ egg_secure_alloc_full (const char *tag, - if (memory) /* Our returned memory is always zeroed */ - memset (memory, 0, length); - } -- -+ - if (!memory) - errno = ENOMEM; -- -+ - return memory; - } - -@@ -1087,20 +1087,20 @@ egg_secure_realloc_full (const char *tag, - - if (length > 0xFFFFFFFF / 2) { - if (egg_secure_warnings) -- fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -+ fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", - (unsigned long)length); - return NULL; - } -- -+ - if (memory == NULL) - return egg_secure_alloc_full (tag, length, flags); - if (!length) { - egg_secure_free_full (memory, flags); - return NULL; - } -- -+ - DO_LOCK (); -- -+ - /* Find out where it belongs to */ - for (block = all_blocks; block; block = block->next) { - if (sec_is_valid_word (block, memory)) { -@@ -1115,10 +1115,10 @@ egg_secure_realloc_full (const char *tag, - - #ifdef WITH_VALGRIND - /* Now tell valgrind about either the new block or old one */ -- VALGRIND_MALLOCLIKE_BLOCK (alloc ? alloc : memory, -- alloc ? length : previous, -+ VALGRIND_MALLOCLIKE_BLOCK (alloc ? alloc : memory, -+ alloc ? length : previous, - sizeof (word_t), 1); --#endif -+#endif - break; - } - } -@@ -1129,13 +1129,13 @@ egg_secure_realloc_full (const char *tag, - - if (block && block->n_used == 0) - sec_block_destroy (block); -- -- DO_UNLOCK (); -- -+ -+ DO_UNLOCK (); -+ - if (!block) { - if ((flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback) { -- /* -- * In this case we can't zero the returned memory, -+ /* -+ * In this case we can't zero the returned memory, - * because we don't know what the block size was. - */ - return EGG_SECURE_GLOBALS.fallback (memory, length); -@@ -1155,7 +1155,7 @@ egg_secure_realloc_full (const char *tag, - egg_secure_free_full (memory, flags); - } - } -- -+ - if (!alloc) - errno = ENOMEM; - -@@ -1172,12 +1172,12 @@ void - egg_secure_free_full (void *memory, int flags) - { - Block *block = NULL; -- -+ - if (memory == NULL) - return; -- -+ - DO_LOCK (); -- -+ - /* Find out where it belongs to */ - for (block = all_blocks; block; block = block->next) { - if (sec_is_valid_word (block, memory)) -@@ -1195,9 +1195,9 @@ egg_secure_free_full (void *memory, int flags) - if (block->n_used == 0) - sec_block_destroy (block); - } -- -+ - DO_UNLOCK (); -- -+ - if (!block) { - if ((flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback) { - EGG_SECURE_GLOBALS.fallback (memory, 0); -@@ -1208,36 +1208,36 @@ egg_secure_free_full (void *memory, int flags) - ASSERT (0 && "memory does does not belong to secure memory pool"); - } - } --} -+} - --int -+int - egg_secure_check (const void *memory) - { - Block *block = NULL; - - DO_LOCK (); -- -+ - /* Find out where it belongs to */ - for (block = all_blocks; block; block = block->next) { - if (sec_is_valid_word (block, (word_t*)memory)) - break; - } -- -+ - DO_UNLOCK (); -- -+ - return block == NULL ? 0 : 1; --} -+} - - void - egg_secure_validate (void) - { - Block *block = NULL; -- -+ - DO_LOCK (); -- -+ - for (block = all_blocks; block; block = block->next) - sec_validate (block); -- -+ - DO_UNLOCK (); - } - -@@ -1320,20 +1320,42 @@ egg_secure_strdup_full (const char *tag, - if (!str) - return NULL; - -- len = strlen (str) + 1; -+ len = strlen (str) + 1; - res = (char *)egg_secure_alloc_full (tag, len, options); - strcpy (res, str); - return res; - } - -+char * -+egg_secure_strndup_full (const char *tag, -+ const char *str, -+ size_t length, -+ int options) -+{ -+ size_t len; -+ char *res; -+ const char *end; -+ -+ if (!str) -+ return NULL; -+ -+ end = memchr (str, '\0', length); -+ if (end != NULL) -+ length = (end - str); -+ len = length + 1; -+ res = (char *)egg_secure_alloc_full (tag, len, options); -+ memcpy (res, str, len); -+ return res; -+} -+ - void - egg_secure_clear (void *p, size_t length) - { - volatile char *vp; -- -+ - if (p == NULL) - return; -- -+ - vp = (volatile char*)p; - while (length) { - *vp = 0xAA; -@@ -1355,10 +1377,10 @@ egg_secure_strfree (char *str) - { - /* - * If we're using unpageable 'secure' memory, then the free call -- * should zero out the memory, but because on certain platforms -+ * should zero out the memory, but because on certain platforms - * we may be using normal memory, zero it out here just in case. - */ -- -+ - egg_secure_strclear (str); - egg_secure_free_full (str, EGG_SECURE_USE_FALLBACK); - } diff --git a/security/gcr/files/patch-egg_egg-secure-memory.h b/security/gcr/files/patch-egg_egg-secure-memory.h deleted file mode 100644 index 56a1607b9..000000000 --- a/security/gcr/files/patch-egg_egg-secure-memory.h +++ /dev/null @@ -1,75 +0,0 @@ ---- egg/egg-secure-memory.h.orig Wed Sep 19 11:01:27 2012 -+++ egg/egg-secure-memory.h Sat Oct 27 14:41:49 2012 -@@ -27,16 +27,16 @@ - #include <stdlib.h> - - /* ------------------------------------------------------------------- -- * Low Level Secure Memory -- * -- * IMPORTANT: This is pure vanila standard C, no glib. We need this -- * because certain consumers of this protocol need to be built -+ * Low Level Secure Memory -+ * -+ * IMPORTANT: This is pure vanila standard C, no glib. We need this -+ * because certain consumers of this protocol need to be built - * without linking in any special libraries. ie: the PKCS#11 module. -- * -+ * - * Thread locking -- * -+ * - * In order to use these functions in a module the following functions -- * must be defined somewhere, and provide appropriate locking for -+ * must be defined somewhere, and provide appropriate locking for - * secure memory between threads: - */ - -@@ -66,12 +66,12 @@ typedef struct { - - extern egg_secure_glob EGG_SECURE_GLOBALS; - --/* -+/* - * Main functionality -- * -+ * - * Allocations return NULL on failure. -- */ -- -+ */ -+ - #define EGG_SECURE_USE_FALLBACK 0x0001 - - #define EGG_SECURE_DECLARE(tag) \ -@@ -83,23 +83,28 @@ extern egg_secure_glob EGG_SECURE_GLOBALS; - } \ - static inline void* egg_secure_strdup (const char *str) { \ - return egg_secure_strdup_full (G_STRINGIFY (tag), str, EGG_SECURE_USE_FALLBACK); \ -+ } \ -+ static inline void* egg_secure_strndup (const char *str, size_t length) { \ -+ return egg_secure_strndup_full (G_STRINGIFY (tag), str, length, EGG_SECURE_USE_FALLBACK); \ - } - - void* egg_secure_alloc_full (const char *tag, size_t length, int options); - - void* egg_secure_realloc_full (const char *tag, void *p, size_t length, int options); - --void egg_secure_free (void* p); -+void egg_secure_free (void* p); - --void egg_secure_free_full (void* p, int fallback); -+void egg_secure_free_full (void* p, int fallback); - - void egg_secure_clear (void *p, size_t length); - --int egg_secure_check (const void* p); -+int egg_secure_check (const void* p); - - void egg_secure_validate (void); - - char* egg_secure_strdup_full (const char *tag, const char *str, int options); -+ -+char* egg_secure_strndup_full (const char *tag, const char *str, size_t length, int options); - - void egg_secure_strclear (char *str); - diff --git a/security/gcr/files/patch-introspection b/security/gcr/files/patch-introspection deleted file mode 100644 index a35185476..000000000 --- a/security/gcr/files/patch-introspection +++ /dev/null @@ -1,145 +0,0 @@ -From 458b52862334a5b440ebda33f6ab8f5914f1ea59 Mon Sep 17 00:00:00 2001 -From: Stef Walter <stefw@gnome.org> -Date: Mon, 11 Feb 2013 17:43:54 +0100 -Subject: [PATCH] Use GObject.Object instead of GLib.Object in introspection - annotations - -A gobject-introspection change broke the former. - -https://bugzilla.gnome.org/show_bug.cgi?id=693440 ---- - gck/gck-misc.c | 6 +++--- - gcr/gcr-collection.c | 6 +++--- - ui/gcr-collection-model.c | 4 ++-- - ui/gcr-list-selector.c | 4 ++-- - ui/gcr-tree-selector.c | 4 ++-- - 5 files changed, 12 insertions(+), 12 deletions(-) - -diff --git a/gck/gck-misc.c b/gck/gck-misc.c -index 42780ff..9471404 100644 ---- gck/gck-misc.c -+++ gck/gck-misc.c -@@ -261,7 +261,7 @@ gck_list_get_boxed_type (void) - - /** - * gck_list_unref_free: (skip) -- * @reflist: (element-type GLib.Object): list of Gobject reference counted pointers -+ * @reflist: (element-type GObject.Object): list of Gobject reference counted pointers - * - * Free a list of GObject based pointers. All objects in the list - * will be unreffed and then the list itself will be freed. -@@ -279,13 +279,13 @@ gck_list_unref_free (GList *reflist) - - /** - * gck_list_ref_copy: (skip) -- * @reflist: (element-type GLib.Object): list of GObject reference counted -+ * @reflist: (element-type GObject.Object): list of GObject reference counted - * objects - * - * Copy a list of GObject based pointers. All objects - * in the list will be reffed and the list will be copied. - * -- * Return value: (transfer full) (element-type GLib.Object): the copied and -+ * Return value: (transfer full) (element-type GObject.Object): the copied and - * reffed list, when done, free it with gck_list_unref_free () - **/ - GList * -diff --git a/gcr/gcr-collection.c b/gcr/gcr-collection.c -index cb0c29b..4975c3c 100644 ---- gcr/gcr-collection.c -+++ gcr/gcr-collection.c -@@ -65,7 +65,7 @@ gcr_collection_default_init (GcrCollectionIface *iface) - /** - * GcrCollection::added: - * @self: the collection -- * @object: (type GLib.Object): object that was added -+ * @object: (type GObject.Object): object that was added - * - * This signal is emitted when an object is added to the collection. - */ -@@ -77,7 +77,7 @@ gcr_collection_default_init (GcrCollectionIface *iface) - /** - * GcrCollection::removed: - * @self: the collection -- * @object: (type GLib.Object): object that was removed -+ * @object: (type GObject.Object): object that was removed - * - * This signal is emitted when an object is removed from the collection. - */ -@@ -117,7 +117,7 @@ gcr_collection_get_length (GcrCollection *self) - * - * Get a list of the objects in this collection. - * -- * Returns: (transfer container) (element-type GLib.Object): a list of the objects -+ * Returns: (transfer container) (element-type GObject.Object): a list of the objects - * in this collection, which should be freed with g_list_free() - */ - GList* -diff --git a/ui/gcr-collection-model.c b/ui/gcr-collection-model.c -index 58cf64f..d9bd688 100644 ---- gcr/gcr-collection-model.c -+++ gcr/gcr-collection-model.c -@@ -1587,7 +1587,7 @@ gcr_collection_model_is_selected (GcrCollectionModel *self, GtkTreeIter *iter) - * - * Get a list of checked/selected objects. - * -- * Returns: (transfer container) (element-type GLib.Object): a list of selected -+ * Returns: (transfer container) (element-type GObject.Object): a list of selected - * objects, which should be freed with g_list_free() - */ - GList * -@@ -1611,7 +1611,7 @@ gcr_collection_model_get_selected_objects (GcrCollectionModel *self) - /** - * gcr_collection_model_set_selected_objects: - * @self: the collection model -- * @selected: (element-type GLib.Object): a list of objects to select -+ * @selected: (element-type GObject.Object): a list of objects to select - * - * Set the checked/selected objects. - */ -diff --git a/ui/gcr-list-selector.c b/ui/gcr-list-selector.c -index 64a3e62..326e91b 100644 ---- ui/gcr-list-selector.c -+++ gcr/gcr-list-selector.c -@@ -397,7 +397,7 @@ gcr_list_selector_get_collection (GcrListSelector *self) - * - * Get a list of selected objects. - * -- * Returns: (transfer container) (element-type GLib.Object): the list of -+ * Returns: (transfer container) (element-type GObject.Object): the list of - * selected objects, to be released with g_list_free() - */ - GList* -@@ -410,7 +410,7 @@ gcr_list_selector_get_selected (GcrListSelector *self) - /** - * gcr_list_selector_set_selected: - * @self: The selector -- * @selected: (element-type GLib.Object): the list of objects to select -+ * @selected: (element-type GObject.Object): the list of objects to select - * - * Select certain objects in the selector. - */ -diff --git a/ui/gcr-tree-selector.c b/ui/gcr-tree-selector.c -index 6766b5e..b5324bb 100644 ---- ui/gcr-tree-selector.c -+++ gcr/gcr-tree-selector.c -@@ -338,7 +338,7 @@ gcr_tree_selector_get_columns (GcrTreeSelector *self) - * - * Get a list of selected objects. - * -- * Returns: (transfer container) (element-type GLib.Object): the list of selected -+ * Returns: (transfer container) (element-type GObject.Object): the list of selected - * objects, to be released with g_list_free() - */ - GList* -@@ -351,7 +351,7 @@ gcr_tree_selector_get_selected (GcrTreeSelector *self) - /** - * gcr_tree_selector_set_selected: - * @self: The selector -- * @selected: (element-type GLib.Object): The list of objects to select. -+ * @selected: (element-type GObject.Object): the list of objects to select - * - * Select certain objects in the selector. - */ --- -1.8.1 diff --git a/security/gcr/pkg-plist b/security/gcr/pkg-plist index 643b9e07a..445f1ffd5 100644 --- a/security/gcr/pkg-plist +++ b/security/gcr/pkg-plist @@ -1,76 +1,85 @@ bin/gcr-viewer include/gck-1/gck/gck-deprecated.h include/gck-1/gck/gck-enum-types.h +include/gck-1/gck/gck-version.h include/gck-1/gck/gck.h include/gck-1/gck/pkcs11.h include/gck-1/gck/pkcs11n.h include/gck-1/gck/pkcs11x.h include/gcr-3/gcr/gcr-base.h -include/gcr-3/gcr/gcr-certificate-basics-widget.h include/gcr-3/gcr/gcr-certificate-chain.h -include/gcr-3/gcr/gcr-certificate-details-widget.h -include/gcr-3/gcr/gcr-certificate-renderer.h include/gcr-3/gcr/gcr-certificate-request.h -include/gcr-3/gcr/gcr-certificate-widget.h include/gcr-3/gcr/gcr-certificate.h -include/gcr-3/gcr/gcr-collection-model.h include/gcr-3/gcr/gcr-collection.h include/gcr-3/gcr/gcr-column.h -include/gcr-3/gcr/gcr-combo-selector.h include/gcr-3/gcr/gcr-comparable.h include/gcr-3/gcr/gcr-deprecated-base.h -include/gcr-3/gcr/gcr-deprecated.h include/gcr-3/gcr/gcr-enum-types-base.h -include/gcr-3/gcr/gcr-enum-types.h -include/gcr-3/gcr/gcr-failure-renderer.h include/gcr-3/gcr/gcr-filter-collection.h include/gcr-3/gcr/gcr-fingerprint.h include/gcr-3/gcr/gcr-icons.h -include/gcr-3/gcr/gcr-import-button.h include/gcr-3/gcr/gcr-import-interaction.h include/gcr-3/gcr/gcr-importer.h -include/gcr-3/gcr/gcr-key-renderer.h -include/gcr-3/gcr/gcr-key-widget.h include/gcr-3/gcr/gcr-library.h -include/gcr-3/gcr/gcr-list-selector.h include/gcr-3/gcr/gcr-mock-prompter.h include/gcr-3/gcr/gcr-parser.h include/gcr-3/gcr/gcr-pkcs11-certificate.h -include/gcr-3/gcr/gcr-prompt-dialog.h include/gcr-3/gcr/gcr-prompt.h -include/gcr-3/gcr/gcr-renderer.h include/gcr-3/gcr/gcr-secret-exchange.h -include/gcr-3/gcr/gcr-secure-entry-buffer.h include/gcr-3/gcr/gcr-secure-memory.h include/gcr-3/gcr/gcr-simple-certificate.h include/gcr-3/gcr/gcr-simple-collection.h include/gcr-3/gcr/gcr-system-prompt.h include/gcr-3/gcr/gcr-system-prompter.h -include/gcr-3/gcr/gcr-tree-selector.h include/gcr-3/gcr/gcr-trust.h include/gcr-3/gcr/gcr-types.h include/gcr-3/gcr/gcr-union-collection.h -include/gcr-3/gcr/gcr-unlock-options-widget.h include/gcr-3/gcr/gcr-unlock-options.h -include/gcr-3/gcr/gcr-viewer-widget.h -include/gcr-3/gcr/gcr-viewer.h +include/gcr-3/gcr/gcr-version.h include/gcr-3/gcr/gcr.h +include/gcr-3/ui/gcr-certificate-basics-widget.h +include/gcr-3/ui/gcr-certificate-details-widget.h +include/gcr-3/ui/gcr-certificate-renderer.h +include/gcr-3/ui/gcr-certificate-widget.h +include/gcr-3/ui/gcr-collection-model.h +include/gcr-3/ui/gcr-combo-selector.h +include/gcr-3/ui/gcr-deprecated.h +include/gcr-3/ui/gcr-enum-types.h +include/gcr-3/ui/gcr-failure-renderer.h +include/gcr-3/ui/gcr-import-button.h +include/gcr-3/ui/gcr-key-renderer.h +include/gcr-3/ui/gcr-key-widget.h +include/gcr-3/ui/gcr-list-selector.h +include/gcr-3/ui/gcr-prompt-dialog.h +include/gcr-3/ui/gcr-renderer.h +include/gcr-3/ui/gcr-secure-entry-buffer.h +include/gcr-3/ui/gcr-tree-selector.h +include/gcr-3/ui/gcr-ui.h +include/gcr-3/ui/gcr-unlock-options-widget.h +include/gcr-3/ui/gcr-viewer-widget.h +include/gcr-3/ui/gcr-viewer.h lib/girepository-1.0/Gck-1.typelib lib/girepository-1.0/Gcr-3.typelib +lib/girepository-1.0/GcrUi-3.typelib lib/libgck-1.la lib/libgck-1.so lib/libgck-1.so.0 -lib/libgcr-3.la +lib/libgck-1.so.0.0.0 lib/libgcr-3.so lib/libgcr-3.so.1 +lib/libgcr-3.so.1.0.0 lib/libgcr-base-3.la lib/libgcr-base-3.so lib/libgcr-base-3.so.1 -lib/libmock-test-module.la -lib/libmock-test-module.so +lib/libgcr-base-3.so.1.0.0 +lib/libgcr-ui-3.la +lib/libgcr-ui-3.so +lib/libgcr-ui-3.so.1 +lib/libgcr-ui-3.so.1.0.0 libdata/pkgconfig/gck-1.pc libdata/pkgconfig/gcr-3.pc libdata/pkgconfig/gcr-base-3.pc +libdata/pkgconfig/gcr-ui-3.pc libexec/gcr-prompter share/GConf/gsettings/org.gnome.crypto.pgp.convert share/GConf/gsettings/org.gnome.crypto.pgp_keyservers.convert @@ -82,6 +91,7 @@ share/gcr-3/ui/gcr-pkcs11-import-dialog.ui share/gcr-3/ui/gcr-unlock-options-widget.ui share/gir-1.0/Gck-1.gir share/gir-1.0/Gcr-3.gir +share/gir-1.0/GcrUi-3.gir share/gtk-doc/html/gck/GckAttributes.html share/gtk-doc/html/gck/GckEnumerator.html share/gtk-doc/html/gck/GckModule.html @@ -93,6 +103,7 @@ share/gtk-doc/html/gck/annotation-glossary.html share/gtk-doc/html/gck/gck-Errors.html share/gtk-doc/html/gck/gck-GckAttribute.html share/gtk-doc/html/gck/gck-GckModule-lists.html +share/gtk-doc/html/gck/gck-Library-Utilities.html share/gtk-doc/html/gck/gck-Miscellaneous-Functions.html share/gtk-doc/html/gck/gck-PKCS11-URIs.html share/gtk-doc/html/gck/gck.devhelp2 @@ -111,6 +122,7 @@ share/gtk-doc/html/gcr-3/GcrCertificateWidget.html share/gtk-doc/html/gcr-3/GcrCollection.html share/gtk-doc/html/gcr-3/GcrCollectionModel.html share/gtk-doc/html/gcr-3/GcrComboSelector.html +share/gtk-doc/html/gcr-3/GcrComparable.html share/gtk-doc/html/gcr-3/GcrImportButton.html share/gtk-doc/html/gcr-3/GcrImporter.html share/gtk-doc/html/gcr-3/GcrKeyWidget.html @@ -138,10 +150,10 @@ share/gtk-doc/html/gcr-3/combo-selector.png share/gtk-doc/html/gcr-3/gcr-3.devhelp2 share/gtk-doc/html/gcr-3/gcr-GcrCertificateRequest.html share/gtk-doc/html/gcr-3/gcr-GcrColumn.html -share/gtk-doc/html/gcr-3/gcr-GcrComparable.html share/gtk-doc/html/gcr-3/gcr-GcrImportInteraction.html share/gtk-doc/html/gcr-3/gcr-Key-Fingerprints.html -share/gtk-doc/html/gcr-3/gcr-Library-Settings.html +share/gtk-doc/html/gcr-3/gcr-Library-PKCS#11.html +share/gtk-doc/html/gcr-3/gcr-Library-Utilities.html share/gtk-doc/html/gcr-3/gcr-Non-pageable-Memory.html share/gtk-doc/html/gcr-3/gcr-Trust-Storage-and-Lookups.html share/gtk-doc/html/gcr-3/home.png @@ -263,6 +275,7 @@ share/locale/sv/LC_MESSAGES/gcr.mo share/locale/ta/LC_MESSAGES/gcr.mo share/locale/te/LC_MESSAGES/gcr.mo share/locale/th/LC_MESSAGES/gcr.mo +share/locale/tg/LC_MESSAGES/gcr.mo share/locale/tr/LC_MESSAGES/gcr.mo share/locale/ug/LC_MESSAGES/gcr.mo share/locale/uk/LC_MESSAGES/gcr.mo @@ -272,12 +285,20 @@ share/locale/zh_CN/LC_MESSAGES/gcr.mo share/locale/zh_HK/LC_MESSAGES/gcr.mo share/locale/zh_TW/LC_MESSAGES/gcr.mo share/mime/packages/gcr-crypto-types.xml +share/vala/vapi/gck-1.deps +share/vala/vapi/gck-1.vapi +share/vala/vapi/gcr-3.deps +share/vala/vapi/gcr-3.vapi +share/vala/vapi/gcr-ui-3.deps +share/vala/vapi/gcr-ui-3.vapi +share/vala/vapi/pkcs11.vapi @dirrm share/gtk-doc/html/gcr-3 @dirrm share/gtk-doc/html/gck @dirrmtry share/gtk-doc/html @dirrmtry share/gtk-doc @dirrm share/gcr-3/ui @dirrm share/gcr-3 +@dirrm include/gcr-3/ui @dirrm include/gcr-3/gcr @dirrm include/gcr-3 @dirrm include/gck-1/gck diff --git a/security/gnome-keyring/Makefile b/security/gnome-keyring/Makefile index 93424878e..9cda8fab2 100644 --- a/security/gnome-keyring/Makefile +++ b/security/gnome-keyring/Makefile @@ -3,7 +3,7 @@ # $MCom$ PORTNAME= gnome-keyring -PORTVERSION= 3.6.2 +PORTVERSION= 3.12.0 CATEGORIES= security gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome3 @@ -21,9 +21,8 @@ LIB_DEPENDS= libgnome-keyring.so:${PORTSDIR}/security/libgnome-keyring \ libgcrypt.so:${PORTSDIR}/security/libgcrypt RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:${PORTSDIR}/security/ca_root_nss -USE_XZ= yes -USE_GNOME= gnomeprefix gtk30 ltverhack intlhack -USES= gettext gmake pathfix pkgconfig +USE_GNOME= gnomeprefix gtk30 intlhack libxslt:build +USES= gettext gmake libtool pathfix pkgconfig tar:xz INSTALLS_ICONS= yes GNU_CONFIGURE= yes USE_LDCONFIG= yes @@ -37,7 +36,6 @@ post-patch: @${REINPLACE_CMD} -e 's|make --version|${GMAKE} --version|g' \ ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|gnome-keyring-module|gnome-keyring.module|g' \ - ${WRKSRC}/pkcs11/rpc-layer/Makefile.in \ ${WRKSRC}/configure post-install: diff --git a/security/gnome-keyring/distinfo b/security/gnome-keyring/distinfo index c3a25a259..05b9cc80d 100644 --- a/security/gnome-keyring/distinfo +++ b/security/gnome-keyring/distinfo @@ -1,2 +1,2 @@ -SHA256 (gnome3/gnome-keyring-3.6.2.tar.xz) = ae60558d60171325ddd90603328393d35d7b560a70b7ab45c4d2718d01130cd6 -SIZE (gnome3/gnome-keyring-3.6.2.tar.xz) = 1139836 +SHA256 (gnome3/gnome-keyring-3.12.0.tar.xz) = 92695ed4d78a576ae77a9ac6faa8fe59db14358ec46b073199e70d537e29ec5f +SIZE (gnome3/gnome-keyring-3.12.0.tar.xz) = 1162892 diff --git a/security/gnome-keyring/files/patch-egg_egg-secure-memory.c b/security/gnome-keyring/files/patch-egg_egg-secure-memory.c deleted file mode 100644 index a3874cbfe..000000000 --- a/security/gnome-keyring/files/patch-egg_egg-secure-memory.c +++ /dev/null @@ -1,959 +0,0 @@ ---- egg/egg-secure-memory.c.orig Wed Sep 26 10:28:35 2012 -+++ egg/egg-secure-memory.c Sat Oct 27 14:46:28 2012 -@@ -22,8 +22,8 @@ - */ - - /* -- * IMPORTANT: This is pure vanila standard C, no glib. We need this -- * because certain consumers of this protocol need to be built -+ * IMPORTANT: This is pure vanila standard C, no glib. We need this -+ * because certain consumers of this protocol need to be built - * without linking in any special libraries. ie: the PKCS#11 module. - */ - -@@ -48,8 +48,8 @@ - - #define DEBUG_SECURE_MEMORY 0 - --#if DEBUG_SECURE_MEMORY --#define DEBUG_ALLOC(msg, n) fprintf(stderr, "%s %lu bytes\n", msg, n); -+#if DEBUG_SECURE_MEMORY -+#define DEBUG_ALLOC(msg, n) fprintf(stderr, "%s %lu bytes\n", msg, n); - #else - #define DEBUG_ALLOC(msg, n) - #endif -@@ -59,8 +59,8 @@ - /* Use our own assert to guarantee no glib allocations */ - #ifndef ASSERT - #ifdef G_DISABLE_ASSERT --#define ASSERT(x) --#else -+#define ASSERT(x) -+#else - #define ASSERT(x) assert(x) - #endif - #endif -@@ -74,18 +74,18 @@ - static int show_warning = 1; - int egg_secure_warnings = 1; - --/* -- * We allocate all memory in units of sizeof(void*). This -+/* -+ * We allocate all memory in units of sizeof(void*). This - * is our definition of 'word'. - */ - typedef void* word_t; - --/* The amount of extra words we can allocate */ -+/* The amount of extra words we can allocate */ - #define WASTE 4 - --/* -- * Track allocated memory or a free block. This structure is not stored -- * in the secure memory area. It is allocated from a pool of other -+/* -+ * Track allocated memory or a free block. This structure is not stored -+ * in the secure memory area. It is allocated from a pool of other - * memory. See meta_pool_xxx (). - */ - typedef struct _Cell { -@@ -97,7 +97,7 @@ typedef struct _Cell { - struct _Cell *prev; /* Previous in memory ring */ - } Cell; - --/* -+/* - * A block of secure memory. This structure is the header in that block. - */ - typedef struct _Block { -@@ -130,20 +130,20 @@ unused_pop (void **stack) - ptr = *stack; - *stack = *(void**)ptr; - return ptr; -- -+ - } - - static inline void* - unused_peek (void **stack) - { - ASSERT (stack); -- return *stack; -+ return *stack; - } - - /* ----------------------------------------------------------------------------- - * POOL META DATA ALLOCATION -- * -- * A pool for memory meta data. We allocate fixed size blocks. There are actually -+ * -+ * A pool for memory meta data. We allocate fixed size blocks. There are actually - * two different structures stored in this pool: Cell and Block. Cell is allocated - * way more often, and is bigger so we just allocate that size for both. - */ -@@ -185,7 +185,7 @@ pool_alloc (void) - if (unused_peek (&pool->unused)) - break; - } -- -+ - /* Create a new pool */ - if (pool == NULL) { - len = getpagesize () * 2; -@@ -205,7 +205,7 @@ pool_alloc (void) - pool->n_items = (len - sizeof (Pool)) / sizeof (Item); - for (i = 0; i < pool->n_items; ++i) - unused_push (&pool->unused, pool->items + i); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_CREATE_MEMPOOL(pool, 0, 0); - #endif -@@ -227,9 +227,9 @@ pool_free (void* item) - { - Pool *pool, **at; - char *ptr, *beg, *end; -- -+ - ptr = item; -- -+ - /* Find which block this one belongs to */ - for (at = (Pool **)&EGG_SECURE_GLOBALS.pool_data, pool = *at; - pool != NULL; at = &pool->next, pool = *at) { -@@ -275,17 +275,17 @@ pool_valid (void* item) - { - Pool *pool; - char *ptr, *beg, *end; -- -+ - ptr = item; -- -+ - /* Find which block this one belongs to */ - for (pool = EGG_SECURE_GLOBALS.pool_data; pool; pool = pool->next) { - beg = (char*)pool->items; - end = (char*)pool + pool->length - sizeof (Item); -- if (ptr >= beg && ptr <= end) -+ if (ptr >= beg && ptr <= end) - return (pool->used && (ptr - beg) % sizeof (Item) == 0); - } -- -+ - return 0; - } - -@@ -293,9 +293,9 @@ pool_valid (void* item) - - /* ----------------------------------------------------------------------------- - * SEC ALLOCATION -- * -+ * - * Each memory cell begins and ends with a pointer to its metadata. These are also -- * used as guards or red zones. Since they're treated as redzones by valgrind we -+ * used as guards or red zones. Since they're treated as redzones by valgrind we - * have to jump through a few hoops before reading and/or writing them. - */ - -@@ -315,11 +315,11 @@ sec_write_guards (Cell *cell) - - ((void**)cell->words)[0] = (void*)cell; - ((void**)cell->words)[cell->n_words - 1] = (void*)cell; -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (cell->words, sizeof (word_t)); - VALGRIND_MAKE_MEM_NOACCESS (cell->words + cell->n_words - 1, sizeof (word_t)); --#endif -+#endif - } - - static inline void -@@ -327,16 +327,16 @@ sec_check_guards (Cell *cell) - { - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (cell->words, sizeof (word_t)); -- VALGRIND_MAKE_MEM_DEFINED (cell->words + cell->n_words - 1, sizeof (word_t)); --#endif -- -+ VALGRIND_MAKE_MEM_DEFINED (cell->words + cell->n_words - 1, sizeof (word_t)); -+#endif -+ - ASSERT(((void**)cell->words)[0] == (void*)cell); - ASSERT(((void**)cell->words)[cell->n_words - 1] == (void*)cell); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (cell->words, sizeof (word_t)); - VALGRIND_MAKE_MEM_NOACCESS (cell->words + cell->n_words - 1, sizeof (word_t)); --#endif -+#endif - } - - static void -@@ -347,9 +347,9 @@ sec_insert_cell_ring (Cell **ring, Cell *cell) - ASSERT (cell != *ring); - ASSERT (cell->next == NULL); - ASSERT (cell->prev == NULL); -- -- /* Insert back into the mix of available memory */ -- if (*ring) { -+ -+ /* Insert back into the mix of available memory */ -+ if (*ring) { - cell->next = (*ring)->next; - cell->prev = *ring; - cell->next->prev = cell; -@@ -358,7 +358,7 @@ sec_insert_cell_ring (Cell **ring, Cell *cell) - cell->next = cell; - cell->prev = cell; - } -- -+ - *ring = cell; - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); -@@ -391,7 +391,7 @@ sec_remove_cell_ring (Cell **ring, Cell *cell) - cell->next->prev = cell->prev; - cell->prev->next = cell->next; - cell->next = cell->prev = NULL; -- -+ - ASSERT (*ring != cell); - } - -@@ -440,10 +440,10 @@ static Cell* - sec_neighbor_before (Block *block, Cell *cell) - { - word_t *word; -- -+ - ASSERT (cell); - ASSERT (block); -- -+ - word = cell->words - 1; - if (!sec_is_valid_word (block, word)) - return NULL; -@@ -451,7 +451,7 @@ sec_neighbor_before (Block *block, Cell *cell) - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -- -+ - cell = *word; - sec_check_guards (cell); - -@@ -462,14 +462,14 @@ sec_neighbor_before (Block *block, Cell *cell) - return cell; - } - --static Cell* -+static Cell* - sec_neighbor_after (Block *block, Cell *cell) - { - word_t *word; -- -+ - ASSERT (cell); - ASSERT (block); -- -+ - word = cell->words + cell->n_words; - if (!sec_is_valid_word (block, word)) - return NULL; -@@ -480,7 +480,7 @@ sec_neighbor_after (Block *block, Cell *cell) - - cell = *word; - sec_check_guards (cell); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (word, sizeof (word_t)); - #endif -@@ -496,7 +496,7 @@ sec_alloc (Block *block, - Cell *cell, *other; - size_t n_words; - void *memory; -- -+ - ASSERT (block); - ASSERT (length); - ASSERT (tag); -@@ -504,16 +504,16 @@ sec_alloc (Block *block, - if (!block->unused_cells) - return NULL; - -- /* -- * Each memory allocation is aligned to a pointer size, and -+ /* -+ * Each memory allocation is aligned to a pointer size, and - * then, sandwidched between two pointers to its meta data. - * These pointers also act as guards. - * -- * We allocate memory in units of sizeof (void*) -+ * We allocate memory in units of sizeof (void*) - */ -- -+ - n_words = sec_size_to_words (length) + 2; -- -+ - /* Look for a cell of at least our required size */ - cell = block->unused_cells; - while (cell->n_words < n_words) { -@@ -523,7 +523,7 @@ sec_alloc (Block *block, - break; - } - } -- -+ - if (!cell) - return NULL; - -@@ -532,7 +532,7 @@ sec_alloc (Block *block, - ASSERT (cell->prev); - ASSERT (cell->words); - sec_check_guards (cell); -- -+ - /* Steal from the cell if it's too long */ - if (cell->n_words > n_words + WASTE) { - other = pool_alloc (); -@@ -542,13 +542,13 @@ sec_alloc (Block *block, - other->words = cell->words; - cell->n_words -= n_words; - cell->words += n_words; -- -+ - sec_write_guards (other); - sec_write_guards (cell); -- -+ - cell = other; - } -- -+ - if (cell->next) - sec_remove_cell_ring (&block->unused_cells, cell); - -@@ -557,11 +557,11 @@ sec_alloc (Block *block, - cell->requested = length; - sec_insert_cell_ring (&block->used_cells, cell); - memory = sec_cell_to_memory (cell); -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_UNDEFINED (memory, length); - #endif -- -+ - return memset (memory, 0, length); - } - -@@ -570,13 +570,13 @@ sec_free (Block *block, void *memory) - { - Cell *cell, *other; - word_t *word; -- -+ - ASSERT (block); - ASSERT (memory); -- -+ - word = memory; - --word; -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -@@ -600,39 +600,39 @@ sec_free (Block *block, void *memory) - /* Remove from the used cell ring */ - sec_remove_cell_ring (&block->used_cells, cell); - -- /* Find previous unallocated neighbor, and merge if possible */ -- other = sec_neighbor_before (block, cell); -- if (other && other->requested == 0) { -- ASSERT (other->tag == NULL); -- ASSERT (other->next && other->prev); -- other->n_words += cell->n_words; -- sec_write_guards (other); -- pool_free (cell); -- cell = other; -- } -- -- /* Find next unallocated neighbor, and merge if possible */ -- other = sec_neighbor_after (block, cell); -- if (other && other->requested == 0) { -- ASSERT (other->tag == NULL); -- ASSERT (other->next && other->prev); -- other->n_words += cell->n_words; -- other->words = cell->words; -- if (cell->next) -- sec_remove_cell_ring (&block->unused_cells, cell); -- sec_write_guards (other); -- pool_free (cell); -- cell = other; -- } -+ /* Find previous unallocated neighbor, and merge if possible */ -+ other = sec_neighbor_before (block, cell); -+ if (other && other->requested == 0) { -+ ASSERT (other->tag == NULL); -+ ASSERT (other->next && other->prev); -+ other->n_words += cell->n_words; -+ sec_write_guards (other); -+ pool_free (cell); -+ cell = other; -+ } - -- /* Add to the unused list if not already there */ -- if (!cell->next) -- sec_insert_cell_ring (&block->unused_cells, cell); -+ /* Find next unallocated neighbor, and merge if possible */ -+ other = sec_neighbor_after (block, cell); -+ if (other && other->requested == 0) { -+ ASSERT (other->tag == NULL); -+ ASSERT (other->next && other->prev); -+ other->n_words += cell->n_words; -+ other->words = cell->words; -+ if (cell->next) -+ sec_remove_cell_ring (&block->unused_cells, cell); -+ sec_write_guards (other); -+ pool_free (cell); -+ cell = other; -+ } - -- cell->tag = NULL; -- cell->requested = 0; -- --block->n_used; -- return NULL; -+ /* Add to the unused list if not already there */ -+ if (!cell->next) -+ sec_insert_cell_ring (&block->unused_cells, cell); -+ -+ cell->tag = NULL; -+ cell->requested = 0; -+ --block->n_used; -+ return NULL; - } - - static void -@@ -683,7 +683,7 @@ sec_realloc (Block *block, - /* Dig out where the meta should be */ - word = memory; - --word; -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -@@ -691,7 +691,7 @@ sec_realloc (Block *block, - ASSERT (sec_is_valid_word (block, word)); - ASSERT (pool_valid (*word)); - cell = *word; -- -+ - /* Validate that it's actually for real */ - sec_check_guards (cell); - ASSERT (cell->requested > 0); -@@ -710,17 +710,17 @@ sec_realloc (Block *block, - cell->requested = length; - alloc = sec_cell_to_memory (cell); - -- /* -+ /* - * Even though we may be reusing the same cell, that doesn't - * mean that the allocation is shrinking. It could have shrunk -- * and is now expanding back some. -- */ -+ * and is now expanding back some. -+ */ - if (length < valid) - sec_clear_undefined (alloc, length, valid); - - return alloc; - } -- -+ - /* Need braaaaaiiiiiinsss... */ - while (cell->n_words < n_words) { - -@@ -728,7 +728,7 @@ sec_realloc (Block *block, - other = sec_neighbor_after (block, cell); - if (!other || other->requested != 0) - break; -- -+ - /* Eat the whole neighbor if not too big */ - if (n_words - cell->n_words + WASTE >= other->n_words) { - cell->n_words += other->n_words; -@@ -745,7 +745,7 @@ sec_realloc (Block *block, - sec_write_guards (cell); - } - } -- -+ - if (cell->n_words >= n_words) { - cell->requested = length; - cell->tag = tag; -@@ -760,7 +760,7 @@ sec_realloc (Block *block, - memcpy_with_vbits (alloc, memory, valid); - sec_free (block, memory); - } -- -+ - return alloc; - } - -@@ -770,7 +770,7 @@ sec_allocated (Block *block, void *memory) - { - Cell *cell; - word_t *word; -- -+ - ASSERT (block); - ASSERT (memory); - -@@ -780,12 +780,12 @@ sec_allocated (Block *block, void *memory) - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (word, sizeof (word_t)); - #endif -- -+ - /* Lookup the meta for this memory block (using guard pointer) */ - ASSERT (sec_is_valid_word (block, word)); - ASSERT (pool_valid (*word)); - cell = *word; -- -+ - sec_check_guards (cell); - ASSERT (cell->requested > 0); - ASSERT (cell->tag != NULL); -@@ -817,10 +817,10 @@ sec_validate (Block *block) - ASSERT (sec_is_valid_word (block, word)); - ASSERT (pool_valid (*word)); - cell = *word; -- -+ - /* Validate that it's actually for real */ - sec_check_guards (cell); -- -+ - /* Is it an allocated block? */ - if (cell->requested > 0) { - ASSERT (cell->tag != NULL); -@@ -829,7 +829,7 @@ sec_validate (Block *block) - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); - ASSERT (cell->requested <= (cell->n_words - 2) * sizeof (word_t)); -- -+ - /* An unused block */ - } else { - ASSERT (cell->tag == NULL); -@@ -838,7 +838,7 @@ sec_validate (Block *block) - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); - } -- -+ - word += cell->n_words; - if (word == last) - break; -@@ -855,7 +855,7 @@ sec_acquire_pages (size_t *sz, - { - void *pages; - unsigned long pgsize; -- -+ - ASSERT (sz); - ASSERT (*sz); - ASSERT (during_tag); -@@ -863,7 +863,7 @@ sec_acquire_pages (size_t *sz, - /* Make sure sz is a multiple of the page size */ - pgsize = getpagesize (); - *sz = (*sz + pgsize -1) & ~(pgsize - 1); -- -+ - #if defined(HAVE_MLOCK) - pages = mmap (0, *sz, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); - if (pages == MAP_FAILED) { -@@ -873,7 +873,7 @@ sec_acquire_pages (size_t *sz, - show_warning = 0; - return NULL; - } -- -+ - if (mlock (pages, *sz) < 0) { - if (show_warning && egg_secure_warnings && errno != EPERM) { - fprintf (stderr, "couldn't lock %lu bytes of memory (%s): %s\n", -@@ -883,12 +883,12 @@ sec_acquire_pages (size_t *sz, - munmap (pages, *sz); - return NULL; - } -- -+ - DEBUG_ALLOC ("gkr-secure-memory: new block ", *sz); -- -+ - show_warning = 1; - return pages; -- -+ - #else - if (show_warning && egg_secure_warnings) - fprintf (stderr, "your system does not support private memory"); -@@ -898,21 +898,21 @@ sec_acquire_pages (size_t *sz, - - } - --static void -+static void - sec_release_pages (void *pages, size_t sz) - { - ASSERT (pages); - ASSERT (sz % getpagesize () == 0); -- -+ - #if defined(HAVE_MLOCK) - if (munlock (pages, sz) < 0 && egg_secure_warnings) - fprintf (stderr, "couldn't unlock private memory: %s\n", strerror (errno)); -- -+ - if (munmap (pages, sz) < 0 && egg_secure_warnings) - fprintf (stderr, "couldn't unmap private anonymous memory: %s\n", strerror (errno)); -- -+ - DEBUG_ALLOC ("gkr-secure-memory: freed block ", sz); -- -+ - #else - ASSERT (FALSE); - #endif -@@ -924,7 +924,7 @@ sec_release_pages (void *pages, size_t sz) - - static Block *all_blocks = NULL; - --static Block* -+static Block* - sec_block_create (size_t size, - const char *during_tag) - { -@@ -950,7 +950,7 @@ sec_block_create (size_t size, - /* The size above is a minimum, we're free to go bigger */ - if (size < DEFAULT_BLOCK_SIZE) - size = DEFAULT_BLOCK_SIZE; -- -+ - block->words = sec_acquire_pages (&size, during_tag); - block->n_words = size / sizeof (word_t); - if (!block->words) { -@@ -958,11 +958,11 @@ sec_block_create (size_t size, - pool_free (cell); - return NULL; - } -- -+ - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_DEFINED (block->words, size); - #endif -- -+ - /* The first cell to allocate from */ - cell->words = block->words; - cell->n_words = block->n_words; -@@ -972,7 +972,7 @@ sec_block_create (size_t size, - - block->next = all_blocks; - all_blocks = block; -- -+ - return block; - } - -@@ -985,7 +985,7 @@ sec_block_destroy (Block *block) - ASSERT (block); - ASSERT (block->words); - ASSERT (block->n_used == 0); -- -+ - /* Remove from the list */ - for (at = &all_blocks, bl = *at; bl; at = &bl->next, bl = *at) { - if (bl == block) { -@@ -993,7 +993,7 @@ sec_block_destroy (Block *block) - break; - } - } -- -+ - /* Must have been found */ - ASSERT (bl == block); - ASSERT (block->used_cells == NULL); -@@ -1004,7 +1004,7 @@ sec_block_destroy (Block *block) - sec_remove_cell_ring (&block->unused_cells, cell); - pool_free (cell); - } -- -+ - /* Release all pages of secure memory */ - sec_release_pages (block->words, block->n_words * sizeof (word_t)); - -@@ -1028,35 +1028,35 @@ egg_secure_alloc_full (const char *tag, - - if (length > 0xFFFFFFFF / 2) { - if (egg_secure_warnings) -- fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -- (unsigned long)length); -+ fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -+ (unsigned long)length); - return NULL; - } - - /* Can't allocate zero bytes */ - if (length == 0) - return NULL; -- -+ - DO_LOCK (); -- -+ - for (block = all_blocks; block; block = block->next) { - memory = sec_alloc (block, tag, length); - if (memory) -- break; -+ break; - } -- -+ - /* None of the current blocks have space, allocate new */ - if (!memory) { - block = sec_block_create (length, tag); - if (block) - memory = sec_alloc (block, tag, length); - } -- -+ - #ifdef WITH_VALGRIND - if (memory != NULL) - VALGRIND_MALLOCLIKE_BLOCK (memory, length, sizeof (void*), 1); - #endif -- -+ - DO_UNLOCK (); - - if (!memory && (flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback != NULL) { -@@ -1064,10 +1064,10 @@ egg_secure_alloc_full (const char *tag, - if (memory) /* Our returned memory is always zeroed */ - memset (memory, 0, length); - } -- -+ - if (!memory) - errno = ENOMEM; -- -+ - return memory; - } - -@@ -1087,20 +1087,20 @@ egg_secure_realloc_full (const char *tag, - - if (length > 0xFFFFFFFF / 2) { - if (egg_secure_warnings) -- fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -+ fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", - (unsigned long)length); - return NULL; - } -- -+ - if (memory == NULL) - return egg_secure_alloc_full (tag, length, flags); - if (!length) { - egg_secure_free_full (memory, flags); - return NULL; - } -- -+ - DO_LOCK (); -- -+ - /* Find out where it belongs to */ - for (block = all_blocks; block; block = block->next) { - if (sec_is_valid_word (block, memory)) { -@@ -1115,10 +1115,10 @@ egg_secure_realloc_full (const char *tag, - - #ifdef WITH_VALGRIND - /* Now tell valgrind about either the new block or old one */ -- VALGRIND_MALLOCLIKE_BLOCK (alloc ? alloc : memory, -- alloc ? length : previous, -+ VALGRIND_MALLOCLIKE_BLOCK (alloc ? alloc : memory, -+ alloc ? length : previous, - sizeof (word_t), 1); --#endif -+#endif - break; - } - } -@@ -1129,13 +1129,13 @@ egg_secure_realloc_full (const char *tag, - - if (block && block->n_used == 0) - sec_block_destroy (block); -- -- DO_UNLOCK (); -- -+ -+ DO_UNLOCK (); -+ - if (!block) { - if ((flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback) { -- /* -- * In this case we can't zero the returned memory, -+ /* -+ * In this case we can't zero the returned memory, - * because we don't know what the block size was. - */ - return EGG_SECURE_GLOBALS.fallback (memory, length); -@@ -1155,7 +1155,7 @@ egg_secure_realloc_full (const char *tag, - egg_secure_free_full (memory, flags); - } - } -- -+ - if (!alloc) - errno = ENOMEM; - -@@ -1172,12 +1172,12 @@ void - egg_secure_free_full (void *memory, int flags) - { - Block *block = NULL; -- -+ - if (memory == NULL) - return; -- -+ - DO_LOCK (); -- -+ - /* Find out where it belongs to */ - for (block = all_blocks; block; block = block->next) { - if (sec_is_valid_word (block, memory)) -@@ -1195,9 +1195,9 @@ egg_secure_free_full (void *memory, int flags) - if (block->n_used == 0) - sec_block_destroy (block); - } -- -+ - DO_UNLOCK (); -- -+ - if (!block) { - if ((flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback) { - EGG_SECURE_GLOBALS.fallback (memory, 0); -@@ -1208,36 +1208,36 @@ egg_secure_free_full (void *memory, int flags) - ASSERT (0 && "memory does does not belong to secure memory pool"); - } - } --} -+} - --int -+int - egg_secure_check (const void *memory) - { - Block *block = NULL; - - DO_LOCK (); -- -+ - /* Find out where it belongs to */ - for (block = all_blocks; block; block = block->next) { - if (sec_is_valid_word (block, (word_t*)memory)) - break; - } -- -+ - DO_UNLOCK (); -- -+ - return block == NULL ? 0 : 1; --} -+} - - void - egg_secure_validate (void) - { - Block *block = NULL; -- -+ - DO_LOCK (); -- -+ - for (block = all_blocks; block; block = block->next) - sec_validate (block); -- -+ - DO_UNLOCK (); - } - -@@ -1320,20 +1320,42 @@ egg_secure_strdup_full (const char *tag, - if (!str) - return NULL; - -- len = strlen (str) + 1; -+ len = strlen (str) + 1; - res = (char *)egg_secure_alloc_full (tag, len, options); - strcpy (res, str); - return res; - } - -+char * -+egg_secure_strndup_full (const char *tag, -+ const char *str, -+ size_t length, -+ int options) -+{ -+ size_t len; -+ char *res; -+ const char *end; -+ -+ if (!str) -+ return NULL; -+ -+ end = memchr (str, '\0', length); -+ if (end != NULL) -+ length = (end - str); -+ len = length + 1; -+ res = (char *)egg_secure_alloc_full (tag, len, options); -+ memcpy (res, str, len); -+ return res; -+} -+ - void - egg_secure_clear (void *p, size_t length) - { - volatile char *vp; -- -+ - if (p == NULL) - return; -- -+ - vp = (volatile char*)p; - while (length) { - *vp = 0xAA; -@@ -1355,10 +1377,10 @@ egg_secure_strfree (char *str) - { - /* - * If we're using unpageable 'secure' memory, then the free call -- * should zero out the memory, but because on certain platforms -+ * should zero out the memory, but because on certain platforms - * we may be using normal memory, zero it out here just in case. - */ -- -+ - egg_secure_strclear (str); - egg_secure_free_full (str, EGG_SECURE_USE_FALLBACK); - } diff --git a/security/gnome-keyring/files/patch-egg_egg-secure-memory.h b/security/gnome-keyring/files/patch-egg_egg-secure-memory.h deleted file mode 100644 index 6e9b5ca3e..000000000 --- a/security/gnome-keyring/files/patch-egg_egg-secure-memory.h +++ /dev/null @@ -1,75 +0,0 @@ ---- egg/egg-secure-memory.h.orig Wed Sep 26 10:28:35 2012 -+++ egg/egg-secure-memory.h Sat Oct 27 14:46:28 2012 -@@ -27,16 +27,16 @@ - #include <stdlib.h> - - /* ------------------------------------------------------------------- -- * Low Level Secure Memory -- * -- * IMPORTANT: This is pure vanila standard C, no glib. We need this -- * because certain consumers of this protocol need to be built -+ * Low Level Secure Memory -+ * -+ * IMPORTANT: This is pure vanila standard C, no glib. We need this -+ * because certain consumers of this protocol need to be built - * without linking in any special libraries. ie: the PKCS#11 module. -- * -+ * - * Thread locking -- * -+ * - * In order to use these functions in a module the following functions -- * must be defined somewhere, and provide appropriate locking for -+ * must be defined somewhere, and provide appropriate locking for - * secure memory between threads: - */ - -@@ -66,12 +66,12 @@ typedef struct { - - extern egg_secure_glob EGG_SECURE_GLOBALS; - --/* -+/* - * Main functionality -- * -+ * - * Allocations return NULL on failure. -- */ -- -+ */ -+ - #define EGG_SECURE_USE_FALLBACK 0x0001 - - #define EGG_SECURE_DECLARE(tag) \ -@@ -83,23 +83,28 @@ extern egg_secure_glob EGG_SECURE_GLOBALS; - } \ - static inline void* egg_secure_strdup (const char *str) { \ - return egg_secure_strdup_full (G_STRINGIFY (tag), str, EGG_SECURE_USE_FALLBACK); \ -+ } \ -+ static inline void* egg_secure_strndup (const char *str, size_t length) { \ -+ return egg_secure_strndup_full (G_STRINGIFY (tag), str, length, EGG_SECURE_USE_FALLBACK); \ - } - - void* egg_secure_alloc_full (const char *tag, size_t length, int options); - - void* egg_secure_realloc_full (const char *tag, void *p, size_t length, int options); - --void egg_secure_free (void* p); -+void egg_secure_free (void* p); - --void egg_secure_free_full (void* p, int fallback); -+void egg_secure_free_full (void* p, int fallback); - - void egg_secure_clear (void *p, size_t length); - --int egg_secure_check (const void* p); -+int egg_secure_check (const void* p); - - void egg_secure_validate (void); - - char* egg_secure_strdup_full (const char *tag, const char *str, int options); -+ -+char* egg_secure_strndup_full (const char *tag, const char *str, size_t length, int options); - - void egg_secure_strclear (char *str); - diff --git a/security/gnome-keyring/files/patch-egg_tests_test-secmem.c b/security/gnome-keyring/files/patch-egg_tests_test-secmem.c deleted file mode 100644 index 6aa1d599c..000000000 --- a/security/gnome-keyring/files/patch-egg_tests_test-secmem.c +++ /dev/null @@ -1,66 +0,0 @@ ---- egg/tests/test-secmem.c.orig Wed Sep 26 10:28:35 2012 -+++ egg/tests/test-secmem.c Sat Oct 27 14:46:28 2012 -@@ -39,7 +39,7 @@ extern int egg_secure_warnings; - - EGG_SECURE_DECLARE (tests); - --/* -+/* - * Each test looks like (on one line): - * void unit_test_xxxxx (CuTest* cu) - * -@@ -93,10 +93,12 @@ test_realloc_across (void) - g_assert (p != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p, 1088)); - -- /* Reallocate to a large one, will have to have changed blocks */ -+ /* Reallocate to a large one, will have to have changed blocks */ - p2 = egg_secure_realloc_full ("tests", p, 16200, 0); - g_assert (p2 != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p2, 16200)); -+ -+ egg_secure_free (p2); - } - - static void -@@ -180,26 +182,25 @@ test_multialloc (void) - case 0: /* Allocate some memory */ - size = g_random_int_range (1, 16384); - data = egg_secure_alloc (size); -- g_assert (data); -+ g_assert (data != NULL); - memset (data, 0xCAFEBABE, size); - g_ptr_array_add (memory, data); - break; - case 1: /* Reallocate some memory */ - index = g_random_int_range (0, memory->len); - data = g_ptr_array_index (memory, index); -- g_assert (data); -+ g_assert (data != NULL); - size = g_random_int_range (1, 16384); - data = egg_secure_realloc (data, size); -- g_assert (data); -+ g_assert (data != NULL); - memset (data, 0xCAFEBABE, size); - g_ptr_array_index (memory, index) = data; - break; - case 2: /* Free some memory */ - index = g_random_int_range (0, memory->len); -- data = g_ptr_array_index (memory, index); -- g_assert (data); -+ data = g_ptr_array_remove_index_fast (memory, index); -+ g_assert (data != NULL); - egg_secure_free (data); -- g_ptr_array_remove_index_fast (memory, index); - break; - default: - g_assert_not_reached (); -@@ -212,6 +213,8 @@ test_multialloc (void) - } - - g_assert (memory->len == 0); -+ for (i = 0; i < memory->len; i++) -+ egg_secure_free (memory->pdata[i]); - g_ptr_array_free (memory, TRUE); - - egg_secure_warnings = 1; diff --git a/security/gnome-keyring/pkg-plist b/security/gnome-keyring/pkg-plist index 6b480bd21..f2a550582 100644 --- a/security/gnome-keyring/pkg-plist +++ b/security/gnome-keyring/pkg-plist @@ -7,8 +7,6 @@ etc/xdg/autostart/gnome-keyring-secrets.desktop etc/xdg/autostart/gnome-keyring-ssh.desktop lib/gnome-keyring/devel/gkm-gnome2-store-standalone.la lib/gnome-keyring/devel/gkm-gnome2-store-standalone.so -lib/gnome-keyring/devel/gkm-roots-store-standalone.la -lib/gnome-keyring/devel/gkm-roots-store-standalone.so lib/gnome-keyring/devel/gkm-secret-store-standalone.la lib/gnome-keyring/devel/gkm-secret-store-standalone.so lib/gnome-keyring/devel/gkm-ssh-store-standalone.la @@ -52,6 +50,7 @@ share/locale/fa/LC_MESSAGES/gnome-keyring.mo share/locale/fi/LC_MESSAGES/gnome-keyring.mo share/locale/fr/LC_MESSAGES/gnome-keyring.mo share/locale/ga/LC_MESSAGES/gnome-keyring.mo +share/locale/gd/LC_MESSAGES/gnome-keyring.mo share/locale/gl/LC_MESSAGES/gnome-keyring.mo share/locale/gu/LC_MESSAGES/gnome-keyring.mo share/locale/he/LC_MESSAGES/gnome-keyring.mo @@ -97,6 +96,7 @@ share/locale/sr@latin/LC_MESSAGES/gnome-keyring.mo share/locale/sv/LC_MESSAGES/gnome-keyring.mo share/locale/ta/LC_MESSAGES/gnome-keyring.mo share/locale/te/LC_MESSAGES/gnome-keyring.mo +share/locale/tg/LC_MESSAGES/gnome-keyring.mo share/locale/th/LC_MESSAGES/gnome-keyring.mo share/locale/tr/LC_MESSAGES/gnome-keyring.mo share/locale/ug/LC_MESSAGES/gnome-keyring.mo @@ -115,6 +115,8 @@ share/p11-kit/modules/gnome-keyring.module @dirrmtry share/locale/ug @dirrmtry share/locale/te/LC_MESSAGES @dirrmtry share/locale/te +@dirrmtry share/locale/tg/LC_MESSAGES +@dirrmtry share/locale/tg @dirrmtry share/locale/sr@latin/LC_MESSAGES @dirrmtry share/locale/sr@latin @dirrmtry share/locale/si/LC_MESSAGES @@ -131,6 +133,8 @@ share/p11-kit/modules/gnome-keyring.module @dirrmtry share/locale/mai @dirrmtry share/locale/km/LC_MESSAGES @dirrmtry share/locale/km +@dirrmtry share/locale/gd/LC_MESSAGES +@dirrmtry share/locale/gd @dirrmtry share/locale/en@shaw/LC_MESSAGES @dirrmtry share/locale/en@shaw @dirrmtry share/locale/dz/LC_MESSAGES diff --git a/security/libcryptui/Makefile b/security/libcryptui/Makefile deleted file mode 100644 index e96db8042..000000000 --- a/security/libcryptui/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -# Created by: Dave McKay <dave@mu.org> -# $FreeBSD$ -# $MCom: ports/trunk/security/libcryptui/Makefile 18610 2013-06-30 16:33:05Z marcus $ - -PORTNAME= libcryptui -PORTVERSION= 3.6.0 -CATEGORIES= security gnome -MASTER_SITES= GNOME -DIST_SUBDIR= gnome3 - -MAINTAINER= gnome@FreeBSD.org -COMMENT= GNOME application for managing encryption keys (PGP, SSH) - -BUILD_DEPENDS= gpg:${PORTSDIR}/security/gnupg -LIB_DEPENDS= libgpgme.so:${PORTSDIR}/security/gpgme \ - libdbus-glib-1.so:${PORTSDIR}/devel/dbus-glib \ - libgnome-keyring.so:${PORTSDIR}/security/libgnome-keyring -RUN_DEPENDS= gpg:${PORTSDIR}/security/gnupg - -CONFLICTS= seahorse-2.[0-9]* seahorse-3.0.[0-9]* - -USE_LDCONFIG= yes -USE_XZ= yes -USES= gettext gmake pathfix pkgconfig -USE_GNOME= intlhack gnomeprefix gnomedocutils gtk30 -GNU_CONFIGURE= yes -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib -CONFIGURE_ARGS= --enable-introspection=no - -GLIB_SCHEMAS= org.gnome.seahorse.recipients.gschema.xml - -OPTIONS_DEFINE= NOTIFY - -.include <bsd.port.options.mk> - -.if ${PORT_OPTIONS:MNOTIFY} -LIB_DEPENDS+= libnotify.so:${PORTSDIR}/devel/libnotify -.else -CONFIGURE_ARGS+=--disable-libnotify -.endif - -.include <bsd.port.mk> diff --git a/security/libcryptui/distinfo b/security/libcryptui/distinfo deleted file mode 100644 index 54c9d2508..000000000 --- a/security/libcryptui/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (gnome3/libcryptui-3.6.0.tar.xz) = 0a4a747fff33acd03d1381d27454f8aa5eaca026b7475e24c4b8f8272bbe1c87 -SIZE (gnome3/libcryptui-3.6.0.tar.xz) = 1201296 diff --git a/security/libcryptui/pkg-descr b/security/libcryptui/pkg-descr deleted file mode 100644 index ea4098271..000000000 --- a/security/libcryptui/pkg-descr +++ /dev/null @@ -1,8 +0,0 @@ -Seahorse is a Gnome front end for GnuPG - the Gnu Privacy Guard program. - -It is a tool for secure communications and data storage. -Data encryption and digital signature creation can easily -be performed through a GUI and Key Management operations -can easily be carried out through an intuitive interface. - -WWW: http://seahorse.sourceforge.net/ diff --git a/security/libcryptui/pkg-plist b/security/libcryptui/pkg-plist deleted file mode 100644 index 1f9c30bfe..000000000 --- a/security/libcryptui/pkg-plist +++ /dev/null @@ -1,176 +0,0 @@ -bin/seahorse-daemon -include/libcryptui/cryptui-key-chooser.h -include/libcryptui/cryptui-key-combo.h -include/libcryptui/cryptui-key-list.h -include/libcryptui/cryptui-key-store.h -include/libcryptui/cryptui-keyset.h -include/libcryptui/cryptui.h -lib/libcryptui.a -lib/libcryptui.la -lib/libcryptui.so -lib/libcryptui.so.0 -libdata/pkgconfig/cryptui-0.0.pc -man/man1/seahorse-daemon.1.gz -share/GConf/gsettings/org.gnome.seahorse.recipients.convert -share/cryptui/ui/seahorse-notify.xml -share/cryptui/ui/seahorse-pgp-generate.xml -share/cryptui/ui/seahorse-progress.xml -share/dbus-1/services/org.gnome.seahorse.service -%%DOCSDIR%%/ch01.html -%%DOCSDIR%%/home.png -%%DOCSDIR%%/index.html -%%DOCSDIR%%/index.sgml -%%DOCSDIR%%/left.png -%%DOCSDIR%%/libcryptui-cryptui-defines.html -%%DOCSDIR%%/libcryptui-cryptui-key-chooser.html -%%DOCSDIR%%/libcryptui-cryptui-key-combo.html -%%DOCSDIR%%/libcryptui-cryptui-key-list.html -%%DOCSDIR%%/libcryptui-cryptui-key-store.html -%%DOCSDIR%%/libcryptui-cryptui-keyset.html -%%DOCSDIR%%/libcryptui-cryptui-marshal.html -%%DOCSDIR%%/libcryptui-cryptui.html -%%DOCSDIR%%/libcryptui.devhelp2 -%%DOCSDIR%%/right.png -%%DOCSDIR%%/style.css -%%DOCSDIR%%/up.png -share/locale/ar/LC_MESSAGES/cryptui.mo -share/locale/as/LC_MESSAGES/cryptui.mo -share/locale/ast/LC_MESSAGES/cryptui.mo -share/locale/az/LC_MESSAGES/cryptui.mo -share/locale/be@latin/LC_MESSAGES/cryptui.mo -share/locale/bg/LC_MESSAGES/cryptui.mo -share/locale/bn/LC_MESSAGES/cryptui.mo -share/locale/bn_IN/LC_MESSAGES/cryptui.mo -share/locale/br/LC_MESSAGES/cryptui.mo -share/locale/ca/LC_MESSAGES/cryptui.mo -share/locale/ca@valencia/LC_MESSAGES/cryptui.mo -share/locale/cs/LC_MESSAGES/cryptui.mo -share/locale/cy/LC_MESSAGES/cryptui.mo -share/locale/da/LC_MESSAGES/cryptui.mo -share/locale/de/LC_MESSAGES/cryptui.mo -share/locale/dz/LC_MESSAGES/cryptui.mo -share/locale/el/LC_MESSAGES/cryptui.mo -share/locale/en@shaw/LC_MESSAGES/cryptui.mo -share/locale/en_CA/LC_MESSAGES/cryptui.mo -share/locale/en_GB/LC_MESSAGES/cryptui.mo -share/locale/eo/LC_MESSAGES/cryptui.mo -share/locale/es/LC_MESSAGES/cryptui.mo -share/locale/et/LC_MESSAGES/cryptui.mo -share/locale/eu/LC_MESSAGES/cryptui.mo -share/locale/fi/LC_MESSAGES/cryptui.mo -share/locale/fr/LC_MESSAGES/cryptui.mo -share/locale/ga/LC_MESSAGES/cryptui.mo -share/locale/gl/LC_MESSAGES/cryptui.mo -share/locale/gu/LC_MESSAGES/cryptui.mo -share/locale/he/LC_MESSAGES/cryptui.mo -share/locale/hi/LC_MESSAGES/cryptui.mo -share/locale/hr/LC_MESSAGES/cryptui.mo -share/locale/hu/LC_MESSAGES/cryptui.mo -share/locale/id/LC_MESSAGES/cryptui.mo -share/locale/it/LC_MESSAGES/cryptui.mo -share/locale/ja/LC_MESSAGES/cryptui.mo -share/locale/kn/LC_MESSAGES/cryptui.mo -share/locale/ko/LC_MESSAGES/cryptui.mo -share/locale/ku/LC_MESSAGES/cryptui.mo -share/locale/lt/LC_MESSAGES/cryptui.mo -share/locale/lv/LC_MESSAGES/cryptui.mo -share/locale/mai/LC_MESSAGES/cryptui.mo -share/locale/mk/LC_MESSAGES/cryptui.mo -share/locale/ml/LC_MESSAGES/cryptui.mo -share/locale/mr/LC_MESSAGES/cryptui.mo -share/locale/ms/LC_MESSAGES/cryptui.mo -share/locale/nb/LC_MESSAGES/cryptui.mo -share/locale/ne/LC_MESSAGES/cryptui.mo -share/locale/nl/LC_MESSAGES/cryptui.mo -share/locale/nn/LC_MESSAGES/cryptui.mo -share/locale/oc/LC_MESSAGES/cryptui.mo -share/locale/or/LC_MESSAGES/cryptui.mo -share/locale/pa/LC_MESSAGES/cryptui.mo -share/locale/pl/LC_MESSAGES/cryptui.mo -share/locale/pt/LC_MESSAGES/cryptui.mo -share/locale/pt_BR/LC_MESSAGES/cryptui.mo -share/locale/ro/LC_MESSAGES/cryptui.mo -share/locale/ru/LC_MESSAGES/cryptui.mo -share/locale/rw/LC_MESSAGES/cryptui.mo -share/locale/si/LC_MESSAGES/cryptui.mo -share/locale/sk/LC_MESSAGES/cryptui.mo -share/locale/sl/LC_MESSAGES/cryptui.mo -share/locale/sq/LC_MESSAGES/cryptui.mo -share/locale/sr/LC_MESSAGES/cryptui.mo -share/locale/sr@latin/LC_MESSAGES/cryptui.mo -share/locale/sv/LC_MESSAGES/cryptui.mo -share/locale/ta/LC_MESSAGES/cryptui.mo -share/locale/te/LC_MESSAGES/cryptui.mo -share/locale/th/LC_MESSAGES/cryptui.mo -share/locale/tr/LC_MESSAGES/cryptui.mo -share/locale/ug/LC_MESSAGES/cryptui.mo -share/locale/uk/LC_MESSAGES/cryptui.mo -share/locale/vi/LC_MESSAGES/cryptui.mo -share/locale/zh_CN/LC_MESSAGES/cryptui.mo -share/locale/zh_HK/LC_MESSAGES/cryptui.mo -share/locale/zh_TW/LC_MESSAGES/cryptui.mo -share/pixmaps/cryptui/22x22/seahorse-key-personal.png -share/pixmaps/cryptui/22x22/seahorse-key-ssh.png -share/pixmaps/cryptui/22x22/seahorse-key.png -share/pixmaps/cryptui/22x22/seahorse-person.png -share/pixmaps/cryptui/22x22/seahorse-sign-bad.png -share/pixmaps/cryptui/22x22/seahorse-sign-ok.png -share/pixmaps/cryptui/22x22/seahorse-sign.png -share/pixmaps/cryptui/48x48/seahorse-key-personal.png -share/pixmaps/cryptui/48x48/seahorse-key-ssh.png -share/pixmaps/cryptui/48x48/seahorse-key.png -share/pixmaps/cryptui/48x48/seahorse-person.png -share/pixmaps/cryptui/48x48/seahorse-sign-bad.png -share/pixmaps/cryptui/48x48/seahorse-sign-ok.png -share/pixmaps/cryptui/48x48/seahorse-sign-unknown.png -share/pixmaps/cryptui/48x48/seahorse-sign.png -share/pixmaps/cryptui/scalable/seahorse-key-personal.svg -share/pixmaps/cryptui/scalable/seahorse-key-ssh.svg -share/pixmaps/cryptui/scalable/seahorse-key.svg -share/pixmaps/cryptui/scalable/seahorse-person.svg -share/pixmaps/cryptui/scalable/seahorse-sign-bad.svg -share/pixmaps/cryptui/scalable/seahorse-sign-ok.svg -share/pixmaps/cryptui/scalable/seahorse-sign-unknown.svg -share/pixmaps/cryptui/scalable/seahorse-sign.svg -@dirrm share/pixmaps/cryptui/scalable -@dirrm share/pixmaps/cryptui/48x48 -@dirrm share/pixmaps/cryptui/22x22 -@dirrm share/pixmaps/cryptui -@dirrmtry share/locale/zh_HK/LC_MESSAGES -@dirrmtry share/locale/zh_HK -@dirrmtry share/locale/ug/LC_MESSAGES -@dirrmtry share/locale/ug -@dirrmtry share/locale/te/LC_MESSAGES -@dirrmtry share/locale/te -@dirrmtry share/locale/sr@latin/LC_MESSAGES -@dirrmtry share/locale/sr@latin -@dirrmtry share/locale/si/LC_MESSAGES -@dirrmtry share/locale/si -@dirrmtry share/locale/rw/LC_MESSAGES -@dirrmtry share/locale/rw -@dirrmtry share/locale/oc/LC_MESSAGES -@dirrmtry share/locale/oc -@dirrmtry share/locale/mr/LC_MESSAGES -@dirrmtry share/locale/mr -@dirrmtry share/locale/mai/LC_MESSAGES -@dirrmtry share/locale/mai -@dirrmtry share/locale/ku/LC_MESSAGES -@dirrmtry share/locale/ku -@dirrmtry share/locale/en@shaw/LC_MESSAGES -@dirrmtry share/locale/en@shaw -@dirrmtry share/locale/dz/LC_MESSAGES -@dirrmtry share/locale/dz -@dirrmtry share/locale/ca@valencia/LC_MESSAGES -@dirrmtry share/locale/ca@valencia -@dirrmtry share/locale/bn_IN/LC_MESSAGES -@dirrmtry share/locale/bn_IN -@dirrmtry share/locale/be@latin/LC_MESSAGES -@dirrmtry share/locale/be@latin -@dirrmtry share/locale/ast/LC_MESSAGES -@dirrmtry share/locale/ast -@dirrmtry share/locale/as/LC_MESSAGES -@dirrmtry share/locale/as -@dirrm %%DOCSDIR%% -@dirrm share/cryptui/ui -@dirrm share/cryptui -@dirrm include/libcryptui diff --git a/security/libgnome-keyring/Makefile b/security/libgnome-keyring/Makefile index 3102558a9..31d1d61a6 100644 --- a/security/libgnome-keyring/Makefile +++ b/security/libgnome-keyring/Makefile @@ -3,7 +3,7 @@ # $MCom$ PORTNAME= libgnome-keyring -PORTVERSION= 3.6.0 +PORTVERSION= 3.12.0 CATEGORIES= security gnome MASTER_SITES= GNOME @@ -13,10 +13,9 @@ COMMENT= Program that keeps passwords and other secrets LIB_DEPENDS= libdbus-1.so:${PORTSDIR}/devel/dbus \ libgcrypt.so:${PORTSDIR}/security/libgcrypt -USE_XZ= yes USE_GNOME= glib20 gnomehier gnomeprefix intlhack \ - introspection:build ltverhack -USES= gettext gmake pathfix pkgconfig + introspection:build +USES= gettext gmake libtool pathfix pkgconfig tar:xz GNU_CONFIGURE= yes USE_LDCONFIG= yes CPPFLAGS+= -I${LOCALBASE}/include diff --git a/security/libgnome-keyring/distinfo b/security/libgnome-keyring/distinfo index e4f45d753..ad1525149 100644 --- a/security/libgnome-keyring/distinfo +++ b/security/libgnome-keyring/distinfo @@ -1,2 +1,2 @@ -SHA256 (libgnome-keyring-3.6.0.tar.xz) = 6dca37fb7b37f800f498031ffe303a567410bec09a9bdd877a18865dafcc9830 -SIZE (libgnome-keyring-3.6.0.tar.xz) = 423376 +SHA256 (libgnome-keyring-3.12.0.tar.xz) = c4c178fbb05f72acc484d22ddb0568f7532c409b0a13e06513ff54b91e947783 +SIZE (libgnome-keyring-3.12.0.tar.xz) = 435092 diff --git a/security/libgnome-keyring/files/patch-egg_egg-dh.c b/security/libgnome-keyring/files/patch-egg_egg-dh.c deleted file mode 100644 index bf91221a1..000000000 --- a/security/libgnome-keyring/files/patch-egg_egg-dh.c +++ /dev/null @@ -1,11 +0,0 @@ ---- egg/egg-dh.c.orig Wed Aug 8 21:00:54 2012 -+++ egg/egg-dh.c Sat Oct 27 14:36:16 2012 -@@ -27,6 +27,8 @@ - /* Enabling this is a complete security compromise */ - #define DEBUG_DH_SECRET 0 - -+EGG_SECURE_DECLARE (dh); -+ - typedef struct _DHGroup { - const gchar *name; - guint bits; diff --git a/security/libgnome-keyring/files/patch-egg_egg-libgcrypt.c b/security/libgnome-keyring/files/patch-egg_egg-libgcrypt.c deleted file mode 100644 index a96d73005..000000000 --- a/security/libgnome-keyring/files/patch-egg_egg-libgcrypt.c +++ /dev/null @@ -1,11 +0,0 @@ ---- egg/egg-libgcrypt.c.orig Wed Aug 8 21:00:54 2012 -+++ egg/egg-libgcrypt.c Sat Oct 27 14:36:16 2012 -@@ -28,6 +28,8 @@ - - #include <gcrypt.h> - -+EGG_SECURE_DECLARE (libgcrypt); -+ - static void - log_handler (gpointer unused, int unknown, const gchar *msg, va_list va) - { diff --git a/security/libgnome-keyring/files/patch-egg_egg-secure-memory.c b/security/libgnome-keyring/files/patch-egg_egg-secure-memory.c deleted file mode 100644 index ba78bfc76..000000000 --- a/security/libgnome-keyring/files/patch-egg_egg-secure-memory.c +++ /dev/null @@ -1,966 +0,0 @@ ---- egg/egg-secure-memory.c.orig Wed Jun 8 10:00:06 2011 -+++ egg/egg-secure-memory.c Sat Oct 27 14:36:16 2012 -@@ -46,12 +46,6 @@ - #include <valgrind/memcheck.h> - #endif - --/* -- * Use this to force all memory through malloc -- * for use with valgrind and the like -- */ --#define FORCE_FALLBACK_MEMORY 0 -- - #define DEBUG_SECURE_MEMORY 0 - - #if DEBUG_SECURE_MEMORY -@@ -72,12 +66,12 @@ - #endif - - #define DO_LOCK() \ -- egg_memory_lock (); -+ EGG_SECURE_GLOBALS.lock (); - - #define DO_UNLOCK() \ -- egg_memory_unlock (); -+ EGG_SECURE_GLOBALS.unlock (); - --static int lock_warning = 1; -+static int show_warning = 1; - int egg_secure_warnings = 1; - - /* -@@ -97,20 +91,22 @@ typedef void* word_t; - typedef struct _Cell { - word_t *words; /* Pointer to secure memory */ - size_t n_words; /* Amount of secure memory in words */ -- size_t allocated; /* Amount actually requested by app, in bytes, 0 if unused */ -- struct _Cell *next; /* Next in unused memory ring, or NULL if used */ -- struct _Cell *prev; /* Previous in unused memory ring, or NULL if used */ -+ size_t requested; /* Amount actually requested by app, in bytes, 0 if unused */ -+ const char *tag; /* Tag which describes the allocation */ -+ struct _Cell *next; /* Next in memory ring */ -+ struct _Cell *prev; /* Previous in memory ring */ - } Cell; - - /* - * A block of secure memory. This structure is the header in that block. - */ - typedef struct _Block { -- word_t *words; /* Actual memory hangs off here */ -- size_t n_words; /* Number of words in block */ -- size_t used; /* Number of used allocations */ -- struct _Cell* unused; /* Ring of unused allocations */ -- struct _Block *next; /* Next block in list */ -+ word_t *words; /* Actual memory hangs off here */ -+ size_t n_words; /* Number of words in block */ -+ size_t n_used; /* Number of used allocations */ -+ struct _Cell* used_cells; /* Ring of used allocations */ -+ struct _Cell* unused_cells; /* Ring of unused allocations */ -+ struct _Block *next; /* Next block in list */ - } Block; - - /* ----------------------------------------------------------------------------- -@@ -167,17 +163,25 @@ typedef struct _Pool { - Item items[1]; /* Actual items hang off here */ - } Pool; - --static Pool *all_pools = NULL; -- --static void* -+static void * - pool_alloc (void) - { - Pool *pool; - void *pages, *item; - size_t len, i; - -+ if (!EGG_SECURE_GLOBALS.pool_version || -+ strcmp (EGG_SECURE_GLOBALS.pool_version, EGG_SECURE_POOL_VER_STR) != 0) { -+ if (show_warning && egg_secure_warnings) -+ fprintf (stderr, "the secure memory pool version does not match the code '%s' != '%s'\n", -+ EGG_SECURE_GLOBALS.pool_version ? EGG_SECURE_GLOBALS.pool_version : "(null)", -+ EGG_SECURE_POOL_VER_STR); -+ show_warning = 0; -+ return NULL; -+ } -+ - /* A pool with an available item */ -- for (pool = all_pools; pool; pool = pool->next) { -+ for (pool = EGG_SECURE_GLOBALS.pool_data; pool; pool = pool->next) { - if (unused_peek (&pool->unused)) - break; - } -@@ -191,8 +195,8 @@ pool_alloc (void) - - /* Fill in the block header, and inlude in block list */ - pool = pages; -- pool->next = all_pools; -- all_pools = pool; -+ pool->next = EGG_SECURE_GLOBALS.pool_data; -+ EGG_SECURE_GLOBALS.pool_data = pool; - pool->length = len; - pool->used = 0; - pool->unused = NULL; -@@ -227,7 +231,8 @@ pool_free (void* item) - ptr = item; - - /* Find which block this one belongs to */ -- for (at = &all_pools, pool = *at; pool; at = &pool->next, pool = *at) { -+ for (at = (Pool **)&EGG_SECURE_GLOBALS.pool_data, pool = *at; -+ pool != NULL; at = &pool->next, pool = *at) { - beg = (char*)pool->items; - end = (char*)pool + pool->length - sizeof (Item); - if (ptr >= beg && ptr <= end) { -@@ -263,6 +268,8 @@ pool_free (void* item) - unused_push (&pool->unused, item); - } - -+#ifndef G_DISABLE_ASSERT -+ - static int - pool_valid (void* item) - { -@@ -272,7 +279,7 @@ pool_valid (void* item) - ptr = item; - - /* Find which block this one belongs to */ -- for (pool = all_pools; pool; pool = pool->next) { -+ for (pool = EGG_SECURE_GLOBALS.pool_data; pool; pool = pool->next) { - beg = (char*)pool->items; - end = (char*)pool + pool->length - sizeof (Item); - if (ptr >= beg && ptr <= end) -@@ -282,6 +289,8 @@ pool_valid (void* item) - return 0; - } - -+#endif /* G_DISABLE_ASSERT */ -+ - /* ----------------------------------------------------------------------------- - * SEC ALLOCATION - * -@@ -398,13 +407,34 @@ sec_is_valid_word (Block *block, word_t *word) - return (word >= block->words && word < block->words + block->n_words); - } - --static inline void* --sec_clear_memory (void *memory, size_t from, size_t to) -+static inline void -+sec_clear_undefined (void *memory, -+ size_t from, -+ size_t to) - { -+ char *ptr = memory; - ASSERT (from <= to); -- memset ((char*)memory + from, 0, to - from); -- return memory; -+#ifdef WITH_VALGRIND -+ VALGRIND_MAKE_MEM_UNDEFINED (ptr + from, to - from); -+#endif -+ memset (ptr + from, 0, to - from); -+#ifdef WITH_VALGRIND -+ VALGRIND_MAKE_MEM_UNDEFINED (ptr + from, to - from); -+#endif - } -+static inline void -+sec_clear_noaccess (void *memory, size_t from, size_t to) -+{ -+ char *ptr = memory; -+ ASSERT (from <= to); -+#ifdef WITH_VALGRIND -+ VALGRIND_MAKE_MEM_UNDEFINED (ptr + from, to - from); -+#endif -+ memset (ptr + from, 0, to - from); -+#ifdef WITH_VALGRIND -+ VALGRIND_MAKE_MEM_NOACCESS (ptr + from, to - from); -+#endif -+} - - static Cell* - sec_neighbor_before (Block *block, Cell *cell) -@@ -459,7 +489,9 @@ sec_neighbor_after (Block *block, Cell *cell) - } - - static void* --sec_alloc (Block *block, size_t length) -+sec_alloc (Block *block, -+ const char *tag, -+ size_t length) - { - Cell *cell, *other; - size_t n_words; -@@ -467,8 +499,9 @@ sec_alloc (Block *block, size_t length) - - ASSERT (block); - ASSERT (length); -+ ASSERT (tag); - -- if (!block->unused) -+ if (!block->unused_cells) - return NULL; - - /* -@@ -482,10 +515,10 @@ sec_alloc (Block *block, size_t length) - n_words = sec_size_to_words (length) + 2; - - /* Look for a cell of at least our required size */ -- cell = block->unused; -+ cell = block->unused_cells; - while (cell->n_words < n_words) { - cell = cell->next; -- if (cell == block->unused) { -+ if (cell == block->unused_cells) { - cell = NULL; - break; - } -@@ -494,7 +527,8 @@ sec_alloc (Block *block, size_t length) - if (!cell) - return NULL; - -- ASSERT (cell->allocated == 0); -+ ASSERT (cell->tag == NULL); -+ ASSERT (cell->requested == 0); - ASSERT (cell->prev); - ASSERT (cell->words); - sec_check_guards (cell); -@@ -516,10 +550,12 @@ sec_alloc (Block *block, size_t length) - } - - if (cell->next) -- sec_remove_cell_ring (&block->unused, cell); -+ sec_remove_cell_ring (&block->unused_cells, cell); - -- ++block->used; -- cell->allocated = length; -+ ++block->n_used; -+ cell->tag = tag; -+ cell->requested = length; -+ sec_insert_cell_ring (&block->used_cells, cell); - memory = sec_cell_to_memory (cell); - - #ifdef WITH_VALGRIND -@@ -555,47 +591,83 @@ sec_free (Block *block, void *memory) - #endif - - sec_check_guards (cell); -- sec_clear_memory (memory, 0, cell->allocated); -+ sec_clear_noaccess (memory, 0, cell->requested); - - sec_check_guards (cell); -- ASSERT (cell->next == NULL); -- ASSERT (cell->prev == NULL); -- ASSERT (cell->allocated > 0); -+ ASSERT (cell->requested > 0); -+ ASSERT (cell->tag != NULL); - -- /* Find previous unallocated neighbor, and merge if possible */ -- other = sec_neighbor_before (block, cell); -- if (other && other->allocated == 0) { -- ASSERT (other->next && other->prev); -- other->n_words += cell->n_words; -- sec_write_guards (other); -- pool_free (cell); -- cell = other; -- } -+ /* Remove from the used cell ring */ -+ sec_remove_cell_ring (&block->used_cells, cell); - -- /* Find next unallocated neighbor, and merge if possible */ -- other = sec_neighbor_after (block, cell); -- if (other && other->allocated == 0) { -- ASSERT (other->next && other->prev); -- other->n_words += cell->n_words; -- other->words = cell->words; -- if (cell->next) -- sec_remove_cell_ring (&block->unused, cell); -- sec_write_guards (other); -- pool_free (cell); -- cell = other; -- } -+ /* Find previous unallocated neighbor, and merge if possible */ -+ other = sec_neighbor_before (block, cell); -+ if (other && other->requested == 0) { -+ ASSERT (other->tag == NULL); -+ ASSERT (other->next && other->prev); -+ other->n_words += cell->n_words; -+ sec_write_guards (other); -+ pool_free (cell); -+ cell = other; -+ } - -- /* Add to the unused list if not already there */ -- if (!cell->next) -- sec_insert_cell_ring (&block->unused, cell); -+ /* Find next unallocated neighbor, and merge if possible */ -+ other = sec_neighbor_after (block, cell); -+ if (other && other->requested == 0) { -+ ASSERT (other->tag == NULL); -+ ASSERT (other->next && other->prev); -+ other->n_words += cell->n_words; -+ other->words = cell->words; -+ if (cell->next) -+ sec_remove_cell_ring (&block->unused_cells, cell); -+ sec_write_guards (other); -+ pool_free (cell); -+ cell = other; -+ } - -- cell->allocated = 0; -- --block->used; -- return NULL; -+ /* Add to the unused list if not already there */ -+ if (!cell->next) -+ sec_insert_cell_ring (&block->unused_cells, cell); -+ -+ cell->tag = NULL; -+ cell->requested = 0; -+ --block->n_used; -+ return NULL; - } - -+static void -+memcpy_with_vbits (void *dest, -+ void *src, -+ size_t length) -+{ -+#ifdef WITH_VALGRIND -+ int vbits_setup = 0; -+ void *vbits = NULL; -+ -+ if (RUNNING_ON_VALGRIND) { -+ vbits = malloc (length); -+ if (vbits != NULL) -+ vbits_setup = VALGRIND_GET_VBITS (src, vbits, length); -+ VALGRIND_MAKE_MEM_DEFINED (src, length); -+ } -+#endif -+ -+ memcpy (dest, src, length); -+ -+#ifdef WITH_VALGRIND -+ if (vbits_setup == 1) { -+ VALGRIND_SET_VBITS (dest, vbits, length); -+ VALGRIND_SET_VBITS (src, vbits, length); -+ } -+ free (vbits); -+#endif -+} -+ - static void* --sec_realloc (Block *block, void *memory, size_t length) -+sec_realloc (Block *block, -+ const char *tag, -+ void *memory, -+ size_t length) - { - Cell *cell, *other; - word_t *word; -@@ -606,6 +678,7 @@ sec_realloc (Block *block, void *memory, size_t length - /* Standard realloc behavior, should have been handled elsewhere */ - ASSERT (memory != NULL); - ASSERT (length > 0); -+ ASSERT (tag != NULL); - - /* Dig out where the meta should be */ - word = memory; -@@ -621,12 +694,11 @@ sec_realloc (Block *block, void *memory, size_t length - - /* Validate that it's actually for real */ - sec_check_guards (cell); -- ASSERT (cell->allocated > 0); -- ASSERT (cell->next == NULL); -- ASSERT (cell->prev == NULL); -+ ASSERT (cell->requested > 0); -+ ASSERT (cell->tag != NULL); - - /* The amount of valid data */ -- valid = cell->allocated; -+ valid = cell->requested; - - /* How many words we actually want */ - n_words = sec_size_to_words (length) + 2; -@@ -635,22 +707,18 @@ sec_realloc (Block *block, void *memory, size_t length - if (n_words <= cell->n_words) { - - /* TODO: No shrinking behavior yet */ -- cell->allocated = length; -+ cell->requested = length; - alloc = sec_cell_to_memory (cell); - --#ifdef WITH_VALGRIND -- VALGRIND_MAKE_MEM_DEFINED (alloc, length); --#endif -- - /* - * Even though we may be reusing the same cell, that doesn't - * mean that the allocation is shrinking. It could have shrunk - * and is now expanding back some. - */ - if (length < valid) -- return sec_clear_memory (alloc, length, valid); -- else -- return alloc; -+ sec_clear_undefined (alloc, length, valid); -+ -+ return alloc; - } - - /* Need braaaaaiiiiiinsss... */ -@@ -658,14 +726,14 @@ sec_realloc (Block *block, void *memory, size_t length - - /* See if we have a neighbor who can give us some memory */ - other = sec_neighbor_after (block, cell); -- if (!other || other->allocated != 0) -+ if (!other || other->requested != 0) - break; - - /* Eat the whole neighbor if not too big */ - if (n_words - cell->n_words + WASTE >= other->n_words) { - cell->n_words += other->n_words; - sec_write_guards (cell); -- sec_remove_cell_ring (&block->unused, other); -+ sec_remove_cell_ring (&block->unused_cells, other); - pool_free (other); - - /* Steal from the neighbor */ -@@ -679,20 +747,17 @@ sec_realloc (Block *block, void *memory, size_t length - } - - if (cell->n_words >= n_words) { -- cell->allocated = length; -+ cell->requested = length; -+ cell->tag = tag; - alloc = sec_cell_to_memory (cell); -- --#ifdef WITH_VALGRIND -- VALGRIND_MAKE_MEM_DEFINED (alloc, length); --#endif -- -- return sec_clear_memory (alloc, valid, length); -+ sec_clear_undefined (alloc, valid, length); -+ return alloc; - } - - /* That didn't work, try alloc/free */ -- alloc = sec_alloc (block, length); -+ alloc = sec_alloc (block, tag, length); - if (alloc) { -- memcpy (alloc, memory, valid); -+ memcpy_with_vbits (alloc, memory, valid); - sec_free (block, memory); - } - -@@ -722,15 +787,14 @@ sec_allocated (Block *block, void *memory) - cell = *word; - - sec_check_guards (cell); -- ASSERT (cell->next == NULL); -- ASSERT (cell->prev == NULL); -- ASSERT (cell->allocated > 0); -+ ASSERT (cell->requested > 0); -+ ASSERT (cell->tag != NULL); - - #ifdef WITH_VALGRIND - VALGRIND_MAKE_MEM_NOACCESS (word, sizeof (word_t)); - #endif - -- return cell->allocated; -+ return cell->requested; - } - - static void -@@ -739,6 +803,11 @@ sec_validate (Block *block) - Cell *cell; - word_t *word, *last; - -+#ifdef WITH_VALGRIND -+ if (RUNNING_ON_VALGRIND) -+ return; -+#endif -+ - word = block->words; - last = word + block->n_words; - -@@ -753,15 +822,19 @@ sec_validate (Block *block) - sec_check_guards (cell); - - /* Is it an allocated block? */ -- if (cell->allocated > 0) { -- ASSERT (cell->next == NULL); -- ASSERT (cell->prev == NULL); -- ASSERT (cell->allocated <= (cell->n_words - 2) * sizeof (word_t)); -+ if (cell->requested > 0) { -+ ASSERT (cell->tag != NULL); -+ ASSERT (cell->next != NULL); -+ ASSERT (cell->prev != NULL); -+ ASSERT (cell->next->prev == cell); -+ ASSERT (cell->prev->next == cell); -+ ASSERT (cell->requested <= (cell->n_words - 2) * sizeof (word_t)); - -- /* An unused block */ -+ /* An unused block */ - } else { -- ASSERT (cell->next); -- ASSERT (cell->prev); -+ ASSERT (cell->tag == NULL); -+ ASSERT (cell->next != NULL); -+ ASSERT (cell->prev != NULL); - ASSERT (cell->next->prev == cell); - ASSERT (cell->prev->next == cell); - } -@@ -777,13 +850,15 @@ sec_validate (Block *block) - */ - - static void* --sec_acquire_pages (size_t *sz) -+sec_acquire_pages (size_t *sz, -+ const char *during_tag) - { - void *pages; - unsigned long pgsize; - - ASSERT (sz); - ASSERT (*sz); -+ ASSERT (during_tag); - - /* Make sure sz is a multiple of the page size */ - pgsize = getpagesize (); -@@ -792,18 +867,18 @@ sec_acquire_pages (size_t *sz) - #if defined(HAVE_MLOCK) - pages = mmap (0, *sz, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); - if (pages == MAP_FAILED) { -- if (lock_warning && egg_secure_warnings) -- fprintf (stderr, "couldn't map %lu bytes of private memory: %s\n", -- (unsigned long)*sz, strerror (errno)); -- lock_warning = 0; -+ if (show_warning && egg_secure_warnings) -+ fprintf (stderr, "couldn't map %lu bytes of memory (%s): %s\n", -+ (unsigned long)*sz, during_tag, strerror (errno)); -+ show_warning = 0; - return NULL; - } - - if (mlock (pages, *sz) < 0) { -- if (lock_warning && egg_secure_warnings && errno != EPERM) { -- fprintf (stderr, "couldn't lock %lu bytes of private memory: %s\n", -- (unsigned long)*sz, strerror (errno)); -- lock_warning = 0; -+ if (show_warning && egg_secure_warnings && errno != EPERM) { -+ fprintf (stderr, "couldn't lock %lu bytes of memory (%s): %s\n", -+ (unsigned long)*sz, during_tag, strerror (errno)); -+ show_warning = 0; - } - munmap (pages, *sz); - return NULL; -@@ -811,13 +886,13 @@ sec_acquire_pages (size_t *sz) - - DEBUG_ALLOC ("gkr-secure-memory: new block ", *sz); - -- lock_warning = 1; -+ show_warning = 1; - return pages; - - #else -- if (lock_warning && egg_secure_warnings) -+ if (show_warning && egg_secure_warnings) - fprintf (stderr, "your system does not support private memory"); -- lock_warning = 0; -+ show_warning = 0; - return NULL; - #endif - -@@ -850,15 +925,17 @@ sec_release_pages (void *pages, size_t sz) - static Block *all_blocks = NULL; - - static Block* --sec_block_create (size_t size) -+sec_block_create (size_t size, -+ const char *during_tag) - { - Block *block; - Cell *cell; - --#if FORCE_FALLBACK_MEMORY -+ ASSERT (during_tag); -+ - /* We can force all all memory to be malloced */ -- return NULL; --#endif -+ if (getenv ("SECMEM_FORCE_FALLBACK")) -+ return NULL; - - block = pool_alloc (); - if (!block) -@@ -874,7 +951,7 @@ sec_block_create (size_t size) - if (size < DEFAULT_BLOCK_SIZE) - size = DEFAULT_BLOCK_SIZE; - -- block->words = sec_acquire_pages (&size); -+ block->words = sec_acquire_pages (&size, during_tag); - block->n_words = size / sizeof (word_t); - if (!block->words) { - pool_free (block); -@@ -889,9 +966,9 @@ sec_block_create (size_t size) - /* The first cell to allocate from */ - cell->words = block->words; - cell->n_words = block->n_words; -- cell->allocated = 0; -+ cell->requested = 0; - sec_write_guards (cell); -- sec_insert_cell_ring (&block->unused, cell); -+ sec_insert_cell_ring (&block->unused_cells, cell); - - block->next = all_blocks; - all_blocks = block; -@@ -907,7 +984,7 @@ sec_block_destroy (Block *block) - - ASSERT (block); - ASSERT (block->words); -- ASSERT (block->used == 0); -+ ASSERT (block->n_used == 0); - - /* Remove from the list */ - for (at = &all_blocks, bl = *at; bl; at = &bl->next, bl = *at) { -@@ -919,11 +996,12 @@ sec_block_destroy (Block *block) - - /* Must have been found */ - ASSERT (bl == block); -+ ASSERT (block->used_cells == NULL); - - /* Release all the meta data cells */ -- while (block->unused) { -- cell = block->unused; -- sec_remove_cell_ring (&block->unused, cell); -+ while (block->unused_cells) { -+ cell = block->unused_cells; -+ sec_remove_cell_ring (&block->unused_cells, cell); - pool_free (cell); - } - -@@ -938,17 +1016,16 @@ sec_block_destroy (Block *block) - */ - - void* --egg_secure_alloc (size_t length) -+egg_secure_alloc_full (const char *tag, -+ size_t length, -+ int flags) - { -- return egg_secure_alloc_full (length, GKR_SECURE_USE_FALLBACK); --} -- --void* --egg_secure_alloc_full (size_t length, int flags) --{ - Block *block; - void *memory = NULL; - -+ if (tag == NULL) -+ tag = "?"; -+ - if (length > 0xFFFFFFFF / 2) { - if (egg_secure_warnings) - fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -@@ -963,16 +1040,16 @@ egg_secure_alloc_full (size_t length, int flags) - DO_LOCK (); - - for (block = all_blocks; block; block = block->next) { -- memory = sec_alloc (block, length); -+ memory = sec_alloc (block, tag, length); - if (memory) - break; - } - - /* None of the current blocks have space, allocate new */ - if (!memory) { -- block = sec_block_create (length); -+ block = sec_block_create (length, tag); - if (block) -- memory = sec_alloc (block, length); -+ memory = sec_alloc (block, tag, length); - } - - #ifdef WITH_VALGRIND -@@ -982,8 +1059,8 @@ egg_secure_alloc_full (size_t length, int flags) - - DO_UNLOCK (); - -- if (!memory && (flags & GKR_SECURE_USE_FALLBACK)) { -- memory = egg_memory_fallback (NULL, length); -+ if (!memory && (flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback != NULL) { -+ memory = EGG_SECURE_GLOBALS.fallback (NULL, length); - if (memory) /* Our returned memory is always zeroed */ - memset (memory, 0, length); - } -@@ -995,19 +1072,19 @@ egg_secure_alloc_full (size_t length, int flags) - } - - void* --egg_secure_realloc (void *memory, size_t length) -+egg_secure_realloc_full (const char *tag, -+ void *memory, -+ size_t length, -+ int flags) - { -- return egg_secure_realloc_full (memory, length, GKR_SECURE_USE_FALLBACK); --} -- --void* --egg_secure_realloc_full (void *memory, size_t length, int flags) --{ - Block *block = NULL; - size_t previous = 0; - int donew = 0; - void *alloc = NULL; - -+ if (tag == NULL) -+ tag = "?"; -+ - if (length > 0xFFFFFFFF / 2) { - if (egg_secure_warnings) - fprintf (stderr, "tried to allocate an insane amount of memory: %lu\n", -@@ -1016,7 +1093,7 @@ egg_secure_realloc_full (void *memory, size_t length, - } - - if (memory == NULL) -- return egg_secure_alloc_full (length, flags); -+ return egg_secure_alloc_full (tag, length, flags); - if (!length) { - egg_secure_free_full (memory, flags); - return NULL; -@@ -1034,7 +1111,7 @@ egg_secure_realloc_full (void *memory, size_t length, - VALGRIND_FREELIKE_BLOCK (memory, sizeof (word_t)); - #endif - -- alloc = sec_realloc (block, memory, length); -+ alloc = sec_realloc (block, tag, memory, length); - - #ifdef WITH_VALGRIND - /* Now tell valgrind about either the new block or old one */ -@@ -1050,31 +1127,31 @@ egg_secure_realloc_full (void *memory, size_t length, - if (block && !alloc) - donew = 1; - -- if (block && block->used == 0) -+ if (block && block->n_used == 0) - sec_block_destroy (block); - - DO_UNLOCK (); - - if (!block) { -- if ((flags & GKR_SECURE_USE_FALLBACK)) { -+ if ((flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback) { - /* - * In this case we can't zero the returned memory, - * because we don't know what the block size was. - */ -- return egg_memory_fallback (memory, length); -+ return EGG_SECURE_GLOBALS.fallback (memory, length); - } else { - if (egg_secure_warnings) -- fprintf (stderr, "memory does not belong to gnome-keyring: 0x%08lx\n", -+ fprintf (stderr, "memory does not belong to secure memory pool: 0x%08lx\n", - (unsigned long)memory); -- ASSERT (0 && "memory does does not belong to gnome-keyring"); -+ ASSERT (0 && "memory does does not belong to secure memory pool"); - return NULL; - } - } - - if (donew) { -- alloc = egg_secure_alloc_full (length, flags); -+ alloc = egg_secure_alloc_full (tag, length, flags); - if (alloc) { -- memcpy (alloc, memory, previous); -+ memcpy_with_vbits (alloc, memory, previous); - egg_secure_free_full (memory, flags); - } - } -@@ -1088,7 +1165,7 @@ egg_secure_realloc_full (void *memory, size_t length, - void - egg_secure_free (void *memory) - { -- egg_secure_free_full (memory, GKR_SECURE_USE_FALLBACK); -+ egg_secure_free_full (memory, EGG_SECURE_USE_FALLBACK); - } - - void -@@ -1109,26 +1186,26 @@ egg_secure_free_full (void *memory, int flags) - - #ifdef WITH_VALGRIND - /* We like valgrind's warnings, so give it a first whack at checking for errors */ -- if (block != NULL || !(flags & GKR_SECURE_USE_FALLBACK)) -+ if (block != NULL || !(flags & EGG_SECURE_USE_FALLBACK)) - VALGRIND_FREELIKE_BLOCK (memory, sizeof (word_t)); - #endif - - if (block != NULL) { - sec_free (block, memory); -- if (block->used == 0) -+ if (block->n_used == 0) - sec_block_destroy (block); - } - - DO_UNLOCK (); - - if (!block) { -- if ((flags & GKR_SECURE_USE_FALLBACK)) { -- egg_memory_fallback (memory, 0); -+ if ((flags & EGG_SECURE_USE_FALLBACK) && EGG_SECURE_GLOBALS.fallback) { -+ EGG_SECURE_GLOBALS.fallback (memory, 0); - } else { - if (egg_secure_warnings) -- fprintf (stderr, "memory does not belong to gnome-keyring: 0x%08lx\n", -+ fprintf (stderr, "memory does not belong to secure memory pool: 0x%08lx\n", - (unsigned long)memory); -- ASSERT (0 && "memory does does not belong to gnome-keyring"); -+ ASSERT (0 && "memory does does not belong to secure memory pool"); - } - } - } -@@ -1164,26 +1241,78 @@ egg_secure_validate (void) - DO_UNLOCK (); - } - --void --egg_secure_dump_blocks (void) -+ -+static egg_secure_rec * -+records_for_ring (Cell *cell_ring, -+ egg_secure_rec *records, -+ unsigned int *count, -+ unsigned int *total) - { -+ egg_secure_rec *new_rec; -+ unsigned int allocated = *count; -+ Cell *cell; -+ -+ cell = cell_ring; -+ do { -+ if (*count >= allocated) { -+ new_rec = realloc (records, sizeof (egg_secure_rec) * (allocated + 32)); -+ if (new_rec == NULL) { -+ *count = 0; -+ free (records); -+ return NULL; -+ } else { -+ records = new_rec; -+ allocated += 32; -+ } -+ } -+ -+ if (cell != NULL) { -+ records[*count].request_length = cell->requested; -+ records[*count].block_length = cell->n_words * sizeof (word_t); -+ records[*count].tag = cell->tag; -+ (*count)++; -+ (*total) += cell->n_words; -+ cell = cell->next; -+ } -+ } while (cell != NULL && cell != cell_ring); -+ -+ return records; -+} -+ -+egg_secure_rec * -+egg_secure_records (unsigned int *count) -+{ -+ egg_secure_rec *records = NULL; - Block *block = NULL; -+ unsigned int total; - -+ *count = 0; -+ - DO_LOCK (); - -- /* Find out where it belongs to */ -- for (block = all_blocks; block; block = block->next) { -- fprintf (stderr, "----------------------------------------------------\n"); -- fprintf (stderr, " BLOCK at: 0x%08lx len: %lu\n", (unsigned long)block, -- (unsigned long)block->n_words * sizeof (word_t)); -- fprintf (stderr, "\n"); -+ for (block = all_blocks; block != NULL; block = block->next) { -+ total = 0; -+ -+ records = records_for_ring (block->unused_cells, records, count, &total); -+ if (records == NULL) -+ break; -+ records = records_for_ring (block->used_cells, records, count, &total); -+ if (records == NULL) -+ break; -+ -+ /* Make sure this actualy accounts for all memory */ -+ ASSERT (total == block->n_words); - } - - DO_UNLOCK (); -+ -+ return records; - } - - char* --egg_secure_strdup (const char *str) -+egg_secure_strdup_full (const char *tag, -+ const char *str, -+ int options) - { - size_t len; - char *res; -@@ -1192,11 +1321,33 @@ egg_secure_strdup (const char *str) - return NULL; - - len = strlen (str) + 1; -- res = (char*)egg_secure_alloc (len); -+ res = (char *)egg_secure_alloc_full (tag, len, options); - strcpy (res, str); - return res; - } - -+char * -+egg_secure_strndup_full (const char *tag, -+ const char *str, -+ size_t length, -+ int options) -+{ -+ size_t len; -+ char *res; -+ const char *end; -+ -+ if (!str) -+ return NULL; -+ -+ end = memchr (str, '\0', length); -+ if (end != NULL) -+ length = (end - str); -+ len = length + 1; -+ res = (char *)egg_secure_alloc_full (tag, len, options); -+ memcpy (res, str, len); -+ return res; -+} -+ - void - egg_secure_clear (void *p, size_t length) - { -@@ -1205,11 +1356,11 @@ egg_secure_clear (void *p, size_t length) - if (p == NULL) - return; - -- vp = (volatile char*)p; -- while (length) { -- *vp = 0xAA; -- vp++; -- length--; -+ vp = (volatile char*)p; -+ while (length) { -+ *vp = 0xAA; -+ vp++; -+ length--; - } - } - -@@ -1231,5 +1382,5 @@ egg_secure_strfree (char *str) - */ - - egg_secure_strclear (str); -- egg_secure_free_full (str, GKR_SECURE_USE_FALLBACK); -+ egg_secure_free_full (str, EGG_SECURE_USE_FALLBACK); - } diff --git a/security/libgnome-keyring/files/patch-egg_egg-secure-memory.h b/security/libgnome-keyring/files/patch-egg_egg-secure-memory.h deleted file mode 100644 index 89df7cdc7..000000000 --- a/security/libgnome-keyring/files/patch-egg_egg-secure-memory.h +++ /dev/null @@ -1,107 +0,0 @@ ---- egg/egg-secure-memory.h.orig Wed Jun 8 10:00:06 2011 -+++ egg/egg-secure-memory.h Sat Oct 27 14:36:16 2012 -@@ -40,46 +40,58 @@ - * secure memory between threads: - */ - --extern void egg_memory_lock (void); -+typedef struct { -+ void (* lock) (void); -+ void (* unlock) (void); -+ void * (* fallback) (void *pointer, -+ size_t length); -+ void * pool_data; -+ const char * pool_version; -+} egg_secure_glob; - --extern void egg_memory_unlock (void); -+#define EGG_SECURE_POOL_VER_STR "1.0" -+#define EGG_SECURE_GLOBALS SECMEM_pool_data_v1_0 - --/* -- * Allocation Fallbacks -- * -- * If we cannot allocate secure memory, then this function -- * (defined elsewhere) will be called which has a chance to -- * allocate other memory abort or do whatever. -- * -- * Same call semantics as realloc with regard to NULL and zeros -- */ --extern void* egg_memory_fallback (void *p, size_t length); -+#define EGG_SECURE_DEFINE_GLOBALS(lock, unlock, fallback) \ -+ egg_secure_glob EGG_SECURE_GLOBALS = { \ -+ lock, unlock, fallback, NULL, EGG_SECURE_POOL_VER_STR }; - --#define EGG_SECURE_GLIB_DEFINITIONS() \ -+#define EGG_SECURE_DEFINE_GLIB_GLOBALS() \ - static GStaticMutex memory_mutex = G_STATIC_MUTEX_INIT; \ -- void egg_memory_lock (void) \ -+ static void egg_memory_lock (void) \ - { g_static_mutex_lock (&memory_mutex); } \ -- void egg_memory_unlock (void) \ -+ static void egg_memory_unlock (void) \ - { g_static_mutex_unlock (&memory_mutex); } \ -- void* egg_memory_fallback (void *p, size_t sz) \ -- { return g_realloc (p, sz); } \ -+ EGG_SECURE_DEFINE_GLOBALS (egg_memory_lock, egg_memory_unlock, g_realloc); - -+extern egg_secure_glob EGG_SECURE_GLOBALS; -+ - /* - * Main functionality - * - * Allocations return NULL on failure. - */ - --#define GKR_SECURE_USE_FALLBACK 0x0001 -+#define EGG_SECURE_USE_FALLBACK 0x0001 - --void* egg_secure_alloc (size_t length); -+#define EGG_SECURE_DECLARE(tag) \ -+ static inline void* egg_secure_alloc (size_t length) { \ -+ return egg_secure_alloc_full (G_STRINGIFY (tag), length, EGG_SECURE_USE_FALLBACK); \ -+ } \ -+ static inline void* egg_secure_realloc (void *p, size_t length) { \ -+ return egg_secure_realloc_full (G_STRINGIFY (tag), p, length, EGG_SECURE_USE_FALLBACK); \ -+ } \ -+ static inline void* egg_secure_strdup (const char *str) { \ -+ return egg_secure_strdup_full (G_STRINGIFY (tag), str, EGG_SECURE_USE_FALLBACK); \ -+ } \ -+ static inline void* egg_secure_strndup (const char *str, size_t length) { \ -+ return egg_secure_strndup_full (G_STRINGIFY (tag), str, length, EGG_SECURE_USE_FALLBACK); \ -+ } - --void* egg_secure_alloc_full (size_t length, int flags); -+void* egg_secure_alloc_full (const char *tag, size_t length, int options); - --void* egg_secure_realloc (void *p, size_t length); -+void* egg_secure_realloc_full (const char *tag, void *p, size_t length, int options); - --void* egg_secure_realloc_full (void *p, size_t length, int fallback); -- - void egg_secure_free (void* p); - - void egg_secure_free_full (void* p, int fallback); -@@ -90,12 +102,20 @@ int egg_secure_check (const void* p); - - void egg_secure_validate (void); - --void egg_secure_dump_blocks (void); -+char* egg_secure_strdup_full (const char *tag, const char *str, int options); - --char* egg_secure_strdup (const char *str); -+char* egg_secure_strndup_full (const char *tag, const char *str, size_t length, int options); - - void egg_secure_strclear (char *str); - - void egg_secure_strfree (char *str); -+ -+typedef struct { -+ const char *tag; -+ size_t request_length; -+ size_t block_length; -+} egg_secure_rec; -+ -+egg_secure_rec * egg_secure_records (unsigned int *count); - - #endif /* EGG_SECURE_MEMORY_H */ diff --git a/security/libgnome-keyring/files/patch-egg_tests_Makefile.in b/security/libgnome-keyring/files/patch-egg_tests_Makefile.in deleted file mode 100644 index 6d770f34c..000000000 --- a/security/libgnome-keyring/files/patch-egg_tests_Makefile.in +++ /dev/null @@ -1,10 +0,0 @@ ---- egg/tests/Makefile.in.orig Sat Oct 27 14:39:25 2012 -+++ egg/tests/Makefile.in Sat Oct 27 14:39:52 2012 -@@ -313,6 +313,7 @@ top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - INCLUDES = \ -+ -I$(top_srcdir) \ - -I$(top_srcdir)/egg \ - $(LIBRARY_CFLAGS) - diff --git a/security/libgnome-keyring/files/patch-egg_tests_test-dh.c b/security/libgnome-keyring/files/patch-egg_tests_test-dh.c deleted file mode 100644 index c3347d7bc..000000000 --- a/security/libgnome-keyring/files/patch-egg_tests_test-dh.c +++ /dev/null @@ -1,11 +0,0 @@ ---- egg/tests/test-dh.c.orig Mon Sep 5 07:16:09 2011 -+++ egg/tests/test-dh.c Sat Oct 27 14:36:16 2012 -@@ -35,7 +35,7 @@ - #include <stdio.h> - #include <string.h> - --EGG_SECURE_GLIB_DEFINITIONS (); -+EGG_SECURE_DEFINE_GLIB_GLOBALS (); - - static void - test_dh_perform (void) diff --git a/security/libgnome-keyring/files/patch-egg_tests_test-hkdf.c b/security/libgnome-keyring/files/patch-egg_tests_test-hkdf.c deleted file mode 100644 index 5656083be..000000000 --- a/security/libgnome-keyring/files/patch-egg_tests_test-hkdf.c +++ /dev/null @@ -1,11 +0,0 @@ ---- egg/tests/test-hkdf.c.orig Mon Sep 5 07:16:09 2011 -+++ egg/tests/test-hkdf.c Sat Oct 27 14:36:16 2012 -@@ -33,7 +33,7 @@ - - #include <gcrypt.h> - --EGG_SECURE_GLIB_DEFINITIONS (); -+EGG_SECURE_DEFINE_GLIB_GLOBALS (); - - static void - test_hkdf_test_case_1 (void) diff --git a/security/libgnome-keyring/files/patch-egg_tests_test-secmem.c b/security/libgnome-keyring/files/patch-egg_tests_test-secmem.c deleted file mode 100644 index 1781524d2..000000000 --- a/security/libgnome-keyring/files/patch-egg_tests_test-secmem.c +++ /dev/null @@ -1,167 +0,0 @@ ---- egg/tests/test-secmem.c.orig Mon Sep 5 07:16:09 2011 -+++ egg/tests/test-secmem.c Sat Oct 27 14:36:16 2012 -@@ -23,7 +23,7 @@ - - #include "config.h" - --#include "egg-secure-memory.h" -+#include "egg/egg-secure-memory.h" - - #include <glib.h> - -@@ -31,11 +31,14 @@ - #include <stdio.h> - #include <string.h> - --EGG_SECURE_GLIB_DEFINITIONS (); - -+EGG_SECURE_DEFINE_GLIB_GLOBALS (); -+ - /* Declared in egg-secure-memory.c */ - extern int egg_secure_warnings; - -+EGG_SECURE_DECLARE (tests); -+ - /* - * Each test looks like (on one line): - * void unit_test_xxxxx (CuTest* cu) -@@ -68,7 +71,7 @@ test_alloc_free (void) - gpointer p; - gboolean ret; - -- p = egg_secure_alloc_full (512, 0); -+ p = egg_secure_alloc_full ("tests", 512, 0); - g_assert (p != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p, 512)); - -@@ -86,14 +89,16 @@ test_realloc_across (void) - gpointer p, p2; - - /* Tiny allocation */ -- p = egg_secure_realloc_full (NULL, 1088, 0); -+ p = egg_secure_realloc_full ("tests", NULL, 1088, 0); - g_assert (p != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p, 1088)); - - /* Reallocate to a large one, will have to have changed blocks */ -- p2 = egg_secure_realloc_full (p, 16200, 0); -+ p2 = egg_secure_realloc_full ("tests", p, 16200, 0); - g_assert (p2 != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p2, 16200)); -+ -+ egg_secure_free (p2); - } - - static void -@@ -102,13 +107,13 @@ test_alloc_two (void) - gpointer p, p2; - gboolean ret; - -- p2 = egg_secure_alloc_full (4, 0); -+ p2 = egg_secure_alloc_full ("tests", 4, 0); - g_assert (p2 != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p2, 4)); - - memset (p2, 0x67, 4); - -- p = egg_secure_alloc_full (16200, 0); -+ p = egg_secure_alloc_full ("tests", 16200, 0); - g_assert (p != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p, 16200)); - -@@ -130,19 +135,19 @@ test_realloc (void) - - len = strlen (str) + 1; - -- p = egg_secure_realloc_full (NULL, len, 0); -+ p = egg_secure_realloc_full ("tests", NULL, len, 0); - g_assert (p != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (p, len)); - - strcpy ((gchar*)p, str); - -- p2 = egg_secure_realloc_full (p, 512, 0); -+ p2 = egg_secure_realloc_full ("tests", p, 512, 0); - g_assert (p2 != NULL); - g_assert_cmpint (G_MAXSIZE, ==, find_non_zero (((gchar*)p2) + len, 512 - len)); - - g_assert (strcmp (p2, str) == 0); - -- p = egg_secure_realloc_full (p2, 0, 0); -+ p = egg_secure_realloc_full ("tests", p2, 0, 0); - g_assert (p == NULL); - } - -@@ -154,9 +159,6 @@ test_multialloc (void) - gsize size; - int i, action, index; - -- if (g_test_quick ()) -- return; -- - /* A predetermined seed to get a predetermined pattern */ - g_random_set_seed (15); - memory = g_ptr_array_new (); -@@ -180,26 +182,25 @@ test_multialloc (void) - case 0: /* Allocate some memory */ - size = g_random_int_range (1, 16384); - data = egg_secure_alloc (size); -- g_assert (data); -+ g_assert (data != NULL); - memset (data, 0xCAFEBABE, size); - g_ptr_array_add (memory, data); - break; - case 1: /* Reallocate some memory */ - index = g_random_int_range (0, memory->len); - data = g_ptr_array_index (memory, index); -- g_assert (data); -+ g_assert (data != NULL); - size = g_random_int_range (1, 16384); - data = egg_secure_realloc (data, size); -- g_assert (data); -+ g_assert (data != NULL); - memset (data, 0xCAFEBABE, size); - g_ptr_array_index (memory, index) = data; - break; - case 2: /* Free some memory */ - index = g_random_int_range (0, memory->len); -- data = g_ptr_array_index (memory, index); -- g_assert (data); -+ data = g_ptr_array_remove_index_fast (memory, index); -+ g_assert (data != NULL); - egg_secure_free (data); -- g_ptr_array_remove_index_fast (memory, index); - break; - default: - g_assert_not_reached (); -@@ -212,6 +213,8 @@ test_multialloc (void) - } - - g_assert (memory->len == 0); -+ for (i = 0; i < memory->len; i++) -+ egg_secure_free (memory->pdata[i]); - g_ptr_array_free (memory, TRUE); - - egg_secure_warnings = 1; -@@ -222,7 +225,7 @@ test_clear (void) - { - gpointer p; - -- p = egg_secure_alloc_full (188, 0); -+ p = egg_secure_alloc_full ("tests", 188, 0); - g_assert (p != NULL); - memset (p, 0x89, 188); - g_assert (memchr (p, 0x89, 188) == p); -@@ -255,9 +258,9 @@ main (int argc, char **argv) - { - g_test_init (&argc, &argv, NULL); - -- g_test_add_func ("/secmem/alloc-free", test_alloc_free); -- g_test_add_func ("/secmem/realloc-across", test_realloc_across); -- g_test_add_func ("/secmem/alloc-two", test_alloc_two); -+ g_test_add_func ("/secmem/alloc_free", test_alloc_free); -+ g_test_add_func ("/secmem/realloc_across", test_realloc_across); -+ g_test_add_func ("/secmem/alloc_two", test_alloc_two); - g_test_add_func ("/secmem/realloc", test_realloc); - g_test_add_func ("/secmem/multialloc", test_multialloc); - g_test_add_func ("/secmem/clear", test_clear); diff --git a/security/libgnome-keyring/files/patch-library_Makefile.in b/security/libgnome-keyring/files/patch-library_Makefile.in deleted file mode 100644 index e3bc76614..000000000 --- a/security/libgnome-keyring/files/patch-library_Makefile.in +++ /dev/null @@ -1,11 +0,0 @@ ---- library/Makefile.in.orig Sat Oct 27 14:40:01 2012 -+++ library/Makefile.in Sat Oct 27 14:40:29 2012 -@@ -435,7 +435,7 @@ libgnome_keyring_la_LIBADD = \ - - libgnome_keyring_la_LDFLAGS = \ - -version-info $(LIB_GNOME_KEYRING_LT_VERSION) \ -- -no-undefined -export-symbols-regex 'gnome_keyring_|GNOME_KEYRING_' -+ -no-undefined -export-symbols-regex '^gnome_keyring_|^GNOME_KEYRING_|^SECMEM_.*' - - noinst_LTLIBRARIES = libgnome-keyring-testable.la - libgnome_keyring_testable_la_SOURCES = diff --git a/security/libgnome-keyring/files/patch-library_gkr-session.c b/security/libgnome-keyring/files/patch-library_gkr-session.c deleted file mode 100644 index 9ab5f8ee1..000000000 --- a/security/libgnome-keyring/files/patch-library_gkr-session.c +++ /dev/null @@ -1,11 +0,0 @@ ---- library/gkr-session.c.orig Sat Mar 31 14:59:37 2012 -+++ library/gkr-session.c Sat Oct 27 14:36:16 2012 -@@ -44,6 +44,8 @@ struct _GkrSession { - G_LOCK_DEFINE_STATIC (session_globals); - static GkrSession *the_session; - -+EGG_SECURE_DECLARE (session); -+ - static guchar* - pkcs7_pad_string_in_secure_memory (const gchar *string, gsize *n_padded) - { diff --git a/security/libgnome-keyring/files/patch-library_gnome-keyring-memory.c b/security/libgnome-keyring/files/patch-library_gnome-keyring-memory.c deleted file mode 100644 index f7dd924a2..000000000 --- a/security/libgnome-keyring/files/patch-library_gnome-keyring-memory.c +++ /dev/null @@ -1,81 +0,0 @@ ---- library/gnome-keyring-memory.c.orig Sat Mar 31 14:59:37 2012 -+++ library/gnome-keyring-memory.c Sat Oct 27 14:36:16 2012 -@@ -62,19 +62,19 @@ static GStaticMutex memory_mutex = G_STATIC_MUTEX_INIT - * locking for memory between threads - */ - --void -+static void - egg_memory_lock (void) - { - g_static_mutex_lock (&memory_mutex); - } - --void -+static void - egg_memory_unlock (void) - { - g_static_mutex_unlock (&memory_mutex); - } - --void* -+static void * - egg_memory_fallback (void *p, size_t sz) - { - const gchar *env; -@@ -107,6 +107,10 @@ egg_memory_fallback (void *p, size_t sz) - return g_realloc (p, sz); - } - -+EGG_SECURE_DEFINE_GLOBALS (egg_memory_lock, egg_memory_unlock, egg_memory_fallback); -+ -+EGG_SECURE_DECLARE (libgnome_keyring_memory); -+ - /* ----------------------------------------------------------------------------- - * PUBLIC FUNCTIONS - */ -@@ -129,7 +133,7 @@ gnome_keyring_memory_alloc (gulong sz) - gpointer p; - - /* Try to allocate secure memory */ -- p = egg_secure_alloc_full (sz, GKR_SECURE_USE_FALLBACK); -+ p = egg_secure_alloc (sz); - - /* Our fallback will always allocate */ - g_assert (p); -@@ -151,7 +155,7 @@ gnome_keyring_memory_alloc (gulong sz) - gpointer - gnome_keyring_memory_try_alloc (gulong sz) - { -- return egg_secure_alloc_full (sz, 0); -+ return egg_secure_alloc_full ("libgnome_keyring_memory", sz, 0); - } - - /** -@@ -187,7 +191,7 @@ gnome_keyring_memory_realloc (gpointer p, gulong sz) - } - - /* First try and ask secure memory to reallocate */ -- n = egg_secure_realloc_full (p, sz, GKR_SECURE_USE_FALLBACK); -+ n = egg_secure_realloc (p, sz); - - g_assert (n); - -@@ -226,7 +230,7 @@ gnome_keyring_memory_try_realloc (gpointer p, gulong s - } - - /* First try and ask secure memory to reallocate */ -- n = egg_secure_realloc_full (p, sz, 0); -+ n = egg_secure_realloc_full ("libgnome_keyring_memory", p, sz, 0); - - g_assert (n); - -@@ -247,7 +251,7 @@ gnome_keyring_memory_free (gpointer p) - { - if (!p) - return; -- egg_secure_free_full (p, GKR_SECURE_USE_FALLBACK); -+ egg_secure_free (p); - } - - /** diff --git a/security/libgnome-keyring/files/patch-library_gnome-keyring-utils.c b/security/libgnome-keyring/files/patch-library_gnome-keyring-utils.c deleted file mode 100644 index 320b6ae33..000000000 --- a/security/libgnome-keyring/files/patch-library_gnome-keyring-utils.c +++ /dev/null @@ -1,11 +0,0 @@ ---- library/gnome-keyring-utils.c.orig Fri Aug 17 12:15:17 2012 -+++ library/gnome-keyring-utils.c Sat Oct 27 14:36:16 2012 -@@ -32,6 +32,8 @@ - - #include "egg/egg-secure-memory.h" - -+EGG_SECURE_DECLARE (libgnome_keyring_utils); -+ - /** - * SECTION:gnome-keyring-result - * @title: Result Codes diff --git a/security/libgnome-keyring/files/patch-library_gnome-keyring.c b/security/libgnome-keyring/files/patch-library_gnome-keyring.c deleted file mode 100644 index da2d9c046..000000000 --- a/security/libgnome-keyring/files/patch-library_gnome-keyring.c +++ /dev/null @@ -1,11 +0,0 @@ ---- library/gnome-keyring.c.orig Fri Aug 17 12:15:17 2012 -+++ library/gnome-keyring.c Sat Oct 27 14:36:16 2012 -@@ -51,6 +51,8 @@ - #include <sys/uio.h> - #include <stdarg.h> - -+EGG_SECURE_DECLARE (libgnome_keyring); -+ - typedef gboolean (*DecodeCallback) (DBusMessageIter *, gpointer); - - typedef gboolean (*DecodeDictCallback) (const gchar *, DBusMessageIter *, gpointer); diff --git a/security/libgnome-keyring/pkg-plist b/security/libgnome-keyring/pkg-plist index da56865c6..36d6fb404 100644 --- a/security/libgnome-keyring/pkg-plist +++ b/security/libgnome-keyring/pkg-plist @@ -5,6 +5,7 @@ lib/girepository-1.0/GnomeKeyring-1.0.typelib lib/libgnome-keyring.la lib/libgnome-keyring.so lib/libgnome-keyring.so.0 +lib/libgnome-keyring.so.0.2.0 libdata/pkgconfig/gnome-keyring-1.pc share/doc/gnome-keyring/annotation-glossary.html share/doc/gnome-keyring/ch01.html @@ -54,7 +55,9 @@ share/locale/eu/LC_MESSAGES/libgnome-keyring.mo share/locale/fa/LC_MESSAGES/libgnome-keyring.mo share/locale/fi/LC_MESSAGES/libgnome-keyring.mo share/locale/fr/LC_MESSAGES/libgnome-keyring.mo +share/locale/fur/LC_MESSAGES/libgnome-keyring.mo share/locale/fy/LC_MESSAGES/libgnome-keyring.mo +share/locale/gd/LC_MESSAGES/libgnome-keyring.mo share/locale/gl/LC_MESSAGES/libgnome-keyring.mo share/locale/gu/LC_MESSAGES/libgnome-keyring.mo share/locale/he/LC_MESSAGES/libgnome-keyring.mo @@ -90,6 +93,7 @@ share/locale/sr@latin/LC_MESSAGES/libgnome-keyring.mo share/locale/sv/LC_MESSAGES/libgnome-keyring.mo share/locale/ta/LC_MESSAGES/libgnome-keyring.mo share/locale/te/LC_MESSAGES/libgnome-keyring.mo +share/locale/tg/LC_MESSAGES/libgnome-keyring.mo share/locale/th/LC_MESSAGES/libgnome-keyring.mo share/locale/tr/LC_MESSAGES/libgnome-keyring.mo share/locale/ug/LC_MESSAGES/libgnome-keyring.mo @@ -105,6 +109,8 @@ share/locale/zh_TW/LC_MESSAGES/libgnome-keyring.mo @dirrmtry share/locale/uz@cyrillic @dirrmtry share/locale/ug/LC_MESSAGES @dirrmtry share/locale/ug +@dirrmtry share/locale/tg/LC_MESSAGES +@dirrmtry share/locale/tg @dirrmtry share/locale/te/LC_MESSAGES @dirrmtry share/locale/te @dirrmtry share/locale/sr@latin/LC_MESSAGES @@ -115,8 +121,12 @@ share/locale/zh_TW/LC_MESSAGES/libgnome-keyring.mo @dirrmtry share/locale/mr @dirrmtry share/locale/km/LC_MESSAGES @dirrmtry share/locale/km +@dirrmtry share/locale/gd/LC_MESSAGES +@dirrmtry share/locale/gd @dirrmtry share/locale/fy/LC_MESSAGES @dirrmtry share/locale/fy +@dirrmtry share/locale/fur/LC_MESSAGES +@dirrmtry share/locale/fur @dirrmtry share/locale/ca@valencia/LC_MESSAGES @dirrmtry share/locale/ca@valencia @dirrmtry share/locale/bn_IN/LC_MESSAGES diff --git a/security/libsecret/Makefile b/security/libsecret/Makefile index 9f2767648..e40d93cdb 100644 --- a/security/libsecret/Makefile +++ b/security/libsecret/Makefile @@ -1,9 +1,9 @@ # Created by: Koop Mast <kwm@FreeBSD.org> # $FreeBSD$ -# $MCom: ports/trunk/security/libsecret/Makefile 18610 2013-06-30 16:33:05Z marcus $ +# $MCom: ports-experimental/trunk/security/libsecret/Makefile 19553 2014-04-20 07:23:27Z gusi $ PORTNAME= libsecret -PORTVERSION= 0.15 +PORTVERSION= 0.18 CATEGORIES= security gnome MASTER_SITES= GNOME @@ -13,12 +13,12 @@ COMMENT= Library to access the secret service API BUILD_DEPENDS= docbook-xsl>=0:${PORTSDIR}/textproc/docbook-xsl LIB_DEPENDS= libgcrypt.so:${PORTSDIR}/security/libgcrypt -USE_XZ= yes -USE_GNOME= gnomehier glib20 libxslt:build intltool introspection:build -USES= gettext gmake libtool pathfix pkgconfig +USES= gettext gmake pathfix pkgconfig tar:xz +USE_GNOME= gnomehier glib20 libxslt:build intltool \ + introspection:build USE_LDCONFIG= yes GNU_CONFIGURE= yes -CONFIGURE_ARGS+=--enable-introspection --disable-vala +CONFIGURE_ARGS+=--enable-introspection post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libsecret-1.so.0 diff --git a/security/libsecret/distinfo b/security/libsecret/distinfo index f9a208b2f..ddd3b077b 100644 --- a/security/libsecret/distinfo +++ b/security/libsecret/distinfo @@ -1,2 +1,2 @@ -SHA256 (libsecret-0.15.tar.xz) = 33e728b843efbe099483376ff5a3469260ee4b6ce035c7730909ac3793cb0fb8 -SIZE (libsecret-0.15.tar.xz) = 484532 +SHA256 (libsecret-0.18.tar.xz) = 0c73aa762dbd1e38ba7b03de350e23ce818cb810b0784375e95ef61e004b02e3 +SIZE (libsecret-0.18.tar.xz) = 480520 diff --git a/security/libsecret/pkg-plist b/security/libsecret/pkg-plist index dfc283836..43c7f03bd 100644 --- a/security/libsecret/pkg-plist +++ b/security/libsecret/pkg-plist @@ -13,19 +13,15 @@ include/libsecret-1/libsecret/secret-types.h include/libsecret-1/libsecret/secret-value.h include/libsecret-1/libsecret/secret.h lib/girepository-1.0/Secret-1.typelib -lib/girepository-1.0/SecretUnstable-0.typelib lib/libsecret-1.a lib/libsecret-1.la lib/libsecret-1.so lib/libsecret-1.so.0 -lib/libsecret-1.so.0.0.0 libdata/pkgconfig/libsecret-1.pc libdata/pkgconfig/libsecret-unstable.pc man/man1/secret-tool.1.gz share/gir-1.0/Secret-1.gir -share/gir-1.0/SecretUnstable-0.gir share/gtk-doc/html/libsecret-1/SecretCollection.html -share/gtk-doc/html/libsecret-1/SecretError.html share/gtk-doc/html/libsecret-1/SecretItem.html share/gtk-doc/html/libsecret-1/SecretPrompt.html share/gtk-doc/html/libsecret-1/SecretService.html @@ -44,11 +40,13 @@ share/gtk-doc/html/libsecret-1/js-examples.html share/gtk-doc/html/libsecret-1/js-lookup-example.html share/gtk-doc/html/libsecret-1/js-remove-example.html share/gtk-doc/html/libsecret-1/js-store-example.html +share/gtk-doc/html/libsecret-1/left-insensitive.png share/gtk-doc/html/libsecret-1/left.png share/gtk-doc/html/libsecret-1/libsecret-1.devhelp2 share/gtk-doc/html/libsecret-1/libsecret-DBus-Path-Related-Functions.html share/gtk-doc/html/libsecret-1/libsecret-Password-storage.html share/gtk-doc/html/libsecret-1/libsecret-Secret-Attributes.html +share/gtk-doc/html/libsecret-1/libsecret-SecretError.html share/gtk-doc/html/libsecret-1/libsecret-SecretSchema.html share/gtk-doc/html/libsecret-1/migrating-api.html share/gtk-doc/html/libsecret-1/migrating-introduction.html @@ -66,9 +64,11 @@ share/gtk-doc/html/libsecret-1/py-examples.html share/gtk-doc/html/libsecret-1/py-lookup-example.html share/gtk-doc/html/libsecret-1/py-remove-example.html share/gtk-doc/html/libsecret-1/py-store-example.html +share/gtk-doc/html/libsecret-1/right-insensitive.png share/gtk-doc/html/libsecret-1/right.png share/gtk-doc/html/libsecret-1/simple.html share/gtk-doc/html/libsecret-1/style.css +share/gtk-doc/html/libsecret-1/up-insensitive.png share/gtk-doc/html/libsecret-1/up.png share/gtk-doc/html/libsecret-1/using-c.html share/gtk-doc/html/libsecret-1/using-js.html @@ -79,20 +79,49 @@ share/gtk-doc/html/libsecret-1/vala-examples.html share/gtk-doc/html/libsecret-1/vala-lookup-example.html share/gtk-doc/html/libsecret-1/vala-remove-example.html share/gtk-doc/html/libsecret-1/vala-store-example.html +share/locale/an/LC_MESSAGES/libsecret.mo +share/locale/as/LC_MESSAGES/libsecret.mo +share/locale/be/LC_MESSAGES/libsecret.mo +share/locale/ca/LC_MESSAGES/libsecret.mo +share/locale/ca@valencia/LC_MESSAGES/libsecret.mo share/locale/cs/LC_MESSAGES/libsecret.mo +share/locale/da/LC_MESSAGES/libsecret.mo +share/locale/de/LC_MESSAGES/libsecret.mo +share/locale/el/LC_MESSAGES/libsecret.mo share/locale/es/LC_MESSAGES/libsecret.mo +share/locale/eo/LC_MESSAGES/libsecret.mo +share/locale/fr/LC_MESSAGES/libsecret.mo +share/locale/fur/LC_MESSAGES/libsecret.mo share/locale/gl/LC_MESSAGES/libsecret.mo +share/locale/he/LC_MESSAGES/libsecret.mo share/locale/hu/LC_MESSAGES/libsecret.mo +share/locale/id/LC_MESSAGES/libsecret.mo share/locale/it/LC_MESSAGES/libsecret.mo share/locale/ja/LC_MESSAGES/libsecret.mo +share/locale/ko/LC_MESSAGES/libsecret.mo +share/locale/lt/LC_MESSAGES/libsecret.mo +share/locale/lv/LC_MESSAGES/libsecret.mo +share/locale/ml/LC_MESSAGES/libsecret.mo +share/locale/nb/LC_MESSAGES/libsecret.mo +share/locale/nl/LC_MESSAGES/libsecret.mo +share/locale/pa/LC_MESSAGES/libsecret.mo share/locale/pl/LC_MESSAGES/libsecret.mo +share/locale/pt/LC_MESSAGES/libsecret.mo share/locale/pt_BR/LC_MESSAGES/libsecret.mo share/locale/ru/LC_MESSAGES/libsecret.mo share/locale/sl/LC_MESSAGES/libsecret.mo +share/locale/sk/LC_MESSAGES/libsecret.mo share/locale/sr/LC_MESSAGES/libsecret.mo share/locale/sr@latin/LC_MESSAGES/libsecret.mo +share/locale/tg/LC_MESSAGES/libsecret.mo +share/locale/uk/LC_MESSAGES/libsecret.mo +share/locale/zh_CN/LC_MESSAGES/libsecret.mo +share/locale/zh_HK/LC_MESSAGES/libsecret.mo +share/locale/zh_TW/LC_MESSAGES/libsecret.mo @dirrmtry share/locale/sr@latin/LC_MESSAGES @dirrmtry share/locale/sr@latin +@dirrmtry share/locale/fur/LC_MESSAGES +@dirrmtry share/locale/fur @dirrm share/gtk-doc/html/libsecret-1 @dirrmtry share/gtk-doc/html @dirrmtry share/gtk-doc diff --git a/security/seahorse-sharing/Makefile b/security/seahorse-sharing/Makefile deleted file mode 100644 index 189ee98c3..000000000 --- a/security/seahorse-sharing/Makefile +++ /dev/null @@ -1,29 +0,0 @@ -# Created by: Dave McKay <dave@mu.org> -# $FreeBSD$ -# $MCom: ports/trunk/security/seahorse-sharing/Makefile 18610 2013-06-30 16:33:05Z marcus $ - -PORTNAME= seahorse-sharing -PORTVERSION= 3.6.1 -CATEGORIES= security gnome -MASTER_SITES= GNOME -DIST_SUBDIR= gnome3 - -MAINTAINER= gnome@FreeBSD.org -COMMENT= Seahorse PGP public key sharing using DNS-SD and HKP. - -BUILD_DEPENDS= gpg:${PORTSDIR}/security/gnupg -LIB_DEPENDS= libgpgme.so:${PORTSDIR}/security/gpgme \ - libavahi-glib.so:${PORTSDIR}/net/avahi-app \ - libsoup-2.4.so:${PORTSDIR}/devel/libsoup -RUN_DEPENDS= gpg:${PORTSDIR}/security/gnupg \ - seahorse>=3.2.1:${PORTSDIR}/security/seahorse - -USE_XZ= yes -USES= gettext gmake pathfix pkgconfig -USE_GNOME= intlhack gnomeprefix -GNU_CONFIGURE= yes -INSTALLS_ICONS= yes -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib - -.include <bsd.port.mk> diff --git a/security/seahorse-sharing/distinfo b/security/seahorse-sharing/distinfo deleted file mode 100644 index 84976491f..000000000 --- a/security/seahorse-sharing/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (gnome3/seahorse-sharing-3.6.1.tar.xz) = 678af1602b1ee08bc2e83d9e6da594f67843a316e0d16c25b5f31dfa6c692ff1 -SIZE (gnome3/seahorse-sharing-3.6.1.tar.xz) = 285720 diff --git a/security/seahorse-sharing/pkg-descr b/security/seahorse-sharing/pkg-descr deleted file mode 100644 index 5f512d881..000000000 --- a/security/seahorse-sharing/pkg-descr +++ /dev/null @@ -1,10 +0,0 @@ -Keysharing support for Seahorse by DNS-SD and HKP. - -Seahorse is a Gnome front end for GnuPG - the Gnu Privacy Guard program. - -It is a tool for secure communications and data storage. -Data encryption and digital signature creation can easily -be performed through a GUI and Key Management operations -can easily be carried out through an intuitive interface. - -WWW: http://seahorse.sourceforge.net/ diff --git a/security/seahorse-sharing/pkg-plist b/security/seahorse-sharing/pkg-plist deleted file mode 100644 index 02d4d00e0..000000000 --- a/security/seahorse-sharing/pkg-plist +++ /dev/null @@ -1,15 +0,0 @@ -bin/seahorse-sharing -etc/xdg/autostart/seahorse-sharing.desktop -man/man1/seahorse-sharing.1.gz -share/locale/cs/LC_MESSAGES/seahorse-sharing.mo -share/locale/de/LC_MESSAGES/seahorse-sharing.mo -share/locale/es/LC_MESSAGES/seahorse-sharing.mo -share/locale/gl/LC_MESSAGES/seahorse-sharing.mo -share/locale/lv/LC_MESSAGES/seahorse-sharing.mo -share/locale/pl/LC_MESSAGES/seahorse-sharing.mo -share/locale/sl/LC_MESSAGES/seahorse-sharing.mo -share/locale/sr/LC_MESSAGES/seahorse-sharing.mo -share/locale/sr@latin/LC_MESSAGES/seahorse-sharing.mo -share/pixmaps/seahorse/22x22/seahorse-share-keys.png -share/pixmaps/seahorse/48x48/seahorse-share-keys.png -share/pixmaps/seahorse/scalable/seahorse-share-keys.svg diff --git a/security/seahorse/Makefile b/security/seahorse/Makefile index 02fe9705d..0d3f63bad 100644 --- a/security/seahorse/Makefile +++ b/security/seahorse/Makefile @@ -1,9 +1,10 @@ # Created by: Dave McKay <dave@mu.org> # $FreeBSD$ -# $MCom: ports/trunk/security/seahorse3/Makefile 18480 2013-05-17 20:20:19Z kwm $ +# $MCom: ports-experimental/trunk/security/seahorse/Makefile 19530 2014-04-15 14:24:24Z kwm $ PORTNAME= seahorse -PORTVERSION= 3.6.3 +PORTVERSION= 3.12.0 +PORTREVISION= 1 CATEGORIES= security gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome3 @@ -15,18 +16,14 @@ BUILD_DEPENDS= gpg:${PORTSDIR}/security/gnupg \ itstool:${PORTSDIR}/textproc/itstool LIB_DEPENDS= libgpgme.so:${PORTSDIR}/security/gpgme \ libdbus-glib-1.so:${PORTSDIR}/devel/dbus-glib \ - libgnome-keyring.so:${PORTSDIR}/security/libgnome-keyring \ - libcryptui.so:${PORTSDIR}/security/libcryptui \ libgcr-3.so:${PORTSDIR}/security/gcr \ - libgcrypt.so:${PORTSDIR}/security/libgcrypt \ libsecret-1.so:${PORTSDIR}/security/libsecret \ libsoup-2.4.so:${PORTSDIR}/devel/libsoup RUN_DEPENDS= gpg:${PORTSDIR}/security/gnupg USE_XORG= sm USE_LDCONFIG= yes -USE_XZ= yes -USES= gettext gmake pathfix pkgconfig +USES= gettext gmake libtool pathfix pkgconfig tar:xz USE_GNOME= intlhack gnomeprefix gtk30 GNU_CONFIGURE= yes INSTALLS_ICONS= yes diff --git a/security/seahorse/distinfo b/security/seahorse/distinfo index 550f21983..3e347a52d 100644 --- a/security/seahorse/distinfo +++ b/security/seahorse/distinfo @@ -1,2 +1,2 @@ -SHA256 (gnome3/seahorse-3.6.3.tar.xz) = 9b712da1989725547a8093e638725ee6de74d7870661545a15374c7ebf335cc1 -SIZE (gnome3/seahorse-3.6.3.tar.xz) = 1995252 +SHA256 (gnome3/seahorse-3.12.0.tar.xz) = f78800b1d25b285ddc8928e925f9ee24f27640abba3fc9ab1cd9554c83380d0b +SIZE (gnome3/seahorse-3.12.0.tar.xz) = 1396460 diff --git a/security/seahorse/files/patch-pkgcs11_pkcs11-request.c b/security/seahorse/files/patch-pkgcs11_pkcs11-request.c new file mode 100644 index 000000000..3b0840235 --- /dev/null +++ b/security/seahorse/files/patch-pkgcs11_pkcs11-request.c @@ -0,0 +1,11 @@ +--- pkcs11/pkcs11-request.c.orig 2014-03-22 11:48:55.000000000 +0100 ++++ pkcs11/pkcs11-request.c 2014-03-22 11:49:53.000000000 +0100 +@@ -1051,7 +1051,7 @@ + #line 61 "/data/src/seahorse/pkcs11/pkcs11-request.vala" + _tmp18_ = self->priv->_private_key; + #line 61 "/data/src/seahorse/pkcs11/pkcs11-request.vala" +- g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (_tmp18_, gck_object_get_type ())); ++ g_return_val_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (_tmp18_, gck_object_get_type ()), NULL); + #line 35 "/data/src/seahorse/pkcs11/pkcs11-request.vala" + _g_object_unref0 (widget); + #line 35 "/data/src/seahorse/pkcs11/pkcs11-request.vala" diff --git a/security/seahorse/pkg-descr b/security/seahorse/pkg-descr index ea4098271..59d552042 100644 --- a/security/seahorse/pkg-descr +++ b/security/seahorse/pkg-descr @@ -5,4 +5,4 @@ Data encryption and digital signature creation can easily be performed through a GUI and Key Management operations can easily be carried out through an intuitive interface. -WWW: http://seahorse.sourceforge.net/ +WWW: https://wiki.gnome.org/Apps/Seahorse diff --git a/security/seahorse/pkg-plist b/security/seahorse/pkg-plist index ae4f825fd..03911a3c0 100644 --- a/security/seahorse/pkg-plist +++ b/security/seahorse/pkg-plist @@ -4,64 +4,10 @@ lib/seahorse/xloadimage man/man1/seahorse.1.gz share/GConf/gsettings/org.gnome.seahorse.convert share/GConf/gsettings/org.gnome.seahorse.manager.convert +share/appdata/seahorse.appdata.xml share/applications/seahorse.desktop -share/help/C/seahorse/figures/seahorse-window.png -share/help/C/seahorse/index.docbook -share/help/C/seahorse/legal.xml -share/help/ca/seahorse/figures/seahorse-window.png -share/help/ca/seahorse/index.docbook -share/help/ca/seahorse/legal.xml -share/help/cs/seahorse/figures/seahorse-window.png -share/help/cs/seahorse/index.docbook -share/help/cs/seahorse/legal.xml -share/help/de/seahorse/figures/seahorse-window.png -share/help/de/seahorse/index.docbook -share/help/de/seahorse/legal.xml -share/help/el/seahorse/figures/seahorse-window.png -share/help/el/seahorse/index.docbook -share/help/el/seahorse/legal.xml -share/help/en_GB/seahorse/figures/seahorse-window.png -share/help/en_GB/seahorse/index.docbook -share/help/en_GB/seahorse/legal.xml -share/help/es/seahorse/figures/seahorse-window.png -share/help/es/seahorse/index.docbook -share/help/es/seahorse/legal.xml -share/help/eu/seahorse/figures/seahorse-window.png -share/help/eu/seahorse/index.docbook -share/help/eu/seahorse/legal.xml -share/help/fr/seahorse/figures/seahorse-window.png -share/help/fr/seahorse/index.docbook -share/help/fr/seahorse/legal.xml -share/help/gl/seahorse/figures/seahorse-window.png -share/help/gl/seahorse/index.docbook -share/help/gl/seahorse/legal.xml -share/help/it/seahorse/figures/seahorse-window.png -share/help/it/seahorse/index.docbook -share/help/it/seahorse/legal.xml -share/help/ja/seahorse/figures/seahorse-window.png -share/help/ja/seahorse/index.docbook -share/help/ja/seahorse/legal.xml -share/help/ko/seahorse/figures/seahorse-window.png -share/help/ko/seahorse/index.docbook -share/help/ko/seahorse/legal.xml -share/help/oc/seahorse/figures/seahorse-window.png -share/help/oc/seahorse/index.docbook -share/help/oc/seahorse/legal.xml -share/help/ru/seahorse/figures/seahorse-window.png -share/help/ru/seahorse/index.docbook -share/help/ru/seahorse/legal.xml -share/help/sl/seahorse/figures/seahorse-window.png -share/help/sl/seahorse/index.docbook -share/help/sl/seahorse/legal.xml -share/help/sv/seahorse/figures/seahorse-window.png -share/help/sv/seahorse/index.docbook -share/help/sv/seahorse/legal.xml -share/help/vi/seahorse/figures/seahorse-window.png -share/help/vi/seahorse/index.docbook -share/help/vi/seahorse/legal.xml -share/help/zh_CN/seahorse/figures/seahorse-window.png -share/help/zh_CN/seahorse/index.docbook -share/help/zh_CN/seahorse/legal.xml +share/dbus-1/services/org.gnome.seahorse.Application.service +share/gnome-shell/search-providers/seahorse-search-provider.ini share/icons/hicolor/16x16/apps/seahorse-preferences.png share/icons/hicolor/16x16/apps/seahorse.png share/icons/hicolor/22x22/apps/seahorse-preferences.png @@ -73,6 +19,92 @@ share/icons/hicolor/32x32/apps/seahorse-preferences.png share/icons/hicolor/32x32/apps/seahorse.png share/icons/hicolor/48x48/apps/seahorse-preferences.png share/icons/hicolor/48x48/apps/seahorse.png +share/help/C/seahorse/glossary.page +share/help/C/seahorse/index.page +share/help/C/seahorse/introduction.page +share/help/C/seahorse/key-servers-add.page +share/help/C/seahorse/keyring-change-default.page +share/help/C/seahorse/keyring-create.page +share/help/C/seahorse/keyring-lock.page +share/help/C/seahorse/keyring-unlock.page +share/help/C/seahorse/keyring-update-password.page +share/help/C/seahorse/keyring.page +share/help/C/seahorse/legal.xml +share/help/C/seahorse/misc-key-backup.page +share/help/C/seahorse/misc-key-fingerprint.page +share/help/C/seahorse/passwords-stored-create.page +share/help/C/seahorse/passwords-view.page +share/help/C/seahorse/passwords.page +share/help/C/seahorse/pgp-create.page +share/help/C/seahorse/pgp-delete.page +share/help/C/seahorse/pgp-expiration-change.page +share/help/C/seahorse/pgp-expired.page +share/help/C/seahorse/pgp-export.page +share/help/C/seahorse/pgp-import.page +share/help/C/seahorse/pgp-photoid.page +share/help/C/seahorse/pgp-publish.page +share/help/C/seahorse/pgp-retrieve-remote.page +share/help/C/seahorse/pgp-sign.page +share/help/C/seahorse/pgp-subkeys.page +share/help/C/seahorse/pgp-sync.page +share/help/C/seahorse/pgp-userid-add.page +share/help/C/seahorse/pgp-userid-primary.page +share/help/C/seahorse/pgp-userid-remove.page +share/help/C/seahorse/pgp-userid.page +share/help/C/seahorse/pgp.page +share/help/C/seahorse/ssh-connect-remote.page +share/help/C/seahorse/ssh-create-vs-setup.page +share/help/C/seahorse/ssh-create.page +share/help/C/seahorse/ssh-export.page +share/help/C/seahorse/ssh-import.page +share/help/C/seahorse/ssh.page +share/help/C/seahorse/subkeys-add.page +share/help/C/seahorse/subkeys-examine.page +share/help/C/seahorse/subkeys-revoke.page +share/help/C/seahorse/media/seahorse.png +share/help/es/seahorse/glossary.page +share/help/es/seahorse/index.page +share/help/es/seahorse/introduction.page +share/help/es/seahorse/key-servers-add.page +share/help/es/seahorse/keyring-change-default.page +share/help/es/seahorse/keyring-create.page +share/help/es/seahorse/keyring-lock.page +share/help/es/seahorse/keyring-unlock.page +share/help/es/seahorse/keyring-update-password.page +share/help/es/seahorse/keyring.page +share/help/es/seahorse/legal.xml +share/help/es/seahorse/misc-key-backup.page +share/help/es/seahorse/misc-key-fingerprint.page +share/help/es/seahorse/passwords-stored-create.page +share/help/es/seahorse/passwords-view.page +share/help/es/seahorse/passwords.page +share/help/es/seahorse/pgp-create.page +share/help/es/seahorse/pgp-delete.page +share/help/es/seahorse/pgp-expiration-change.page +share/help/es/seahorse/pgp-expired.page +share/help/es/seahorse/pgp-export.page +share/help/es/seahorse/pgp-import.page +share/help/es/seahorse/pgp-photoid.page +share/help/es/seahorse/pgp-publish.page +share/help/es/seahorse/pgp-retrieve-remote.page +share/help/es/seahorse/pgp-sign.page +share/help/es/seahorse/pgp-subkeys.page +share/help/es/seahorse/pgp-sync.page +share/help/es/seahorse/pgp-userid-add.page +share/help/es/seahorse/pgp-userid-primary.page +share/help/es/seahorse/pgp-userid-remove.page +share/help/es/seahorse/pgp-userid.page +share/help/es/seahorse/pgp.page +share/help/es/seahorse/ssh-connect-remote.page +share/help/es/seahorse/ssh-create-vs-setup.page +share/help/es/seahorse/ssh-create.page +share/help/es/seahorse/ssh-export.page +share/help/es/seahorse/ssh-import.page +share/help/es/seahorse/ssh.page +share/help/es/seahorse/subkeys-add.page +share/help/es/seahorse/subkeys-examine.page +share/help/es/seahorse/subkeys-revoke.page +share/help/es/seahorse/media/seahorse.png share/locale/ar/LC_MESSAGES/seahorse.mo share/locale/as/LC_MESSAGES/seahorse.mo share/locale/ast/LC_MESSAGES/seahorse.mo @@ -142,6 +174,7 @@ share/locale/sr@latin/LC_MESSAGES/seahorse.mo share/locale/sv/LC_MESSAGES/seahorse.mo share/locale/ta/LC_MESSAGES/seahorse.mo share/locale/te/LC_MESSAGES/seahorse.mo +share/locale/tg/LC_MESSAGES/seahorse.mo share/locale/th/LC_MESSAGES/seahorse.mo share/locale/tr/LC_MESSAGES/seahorse.mo share/locale/ug/LC_MESSAGES/seahorse.mo @@ -239,62 +272,14 @@ share/locale/zh_TW/LC_MESSAGES/seahorse.mo @dirrmtry share/locale/ast @dirrmtry share/locale/as/LC_MESSAGES @dirrmtry share/locale/as -@dirrm share/help/zh_CN/seahorse/figures -@dirrm share/help/zh_CN/seahorse -@dirrmtry share/help/zh_CN -@dirrm share/help/vi/seahorse/figures -@dirrm share/help/vi/seahorse -@dirrmtry share/help/vi -@dirrm share/help/sv/seahorse/figures -@dirrm share/help/sv/seahorse -@dirrmtry share/help/sv -@dirrm share/help/sl/seahorse/figures -@dirrm share/help/sl/seahorse -@dirrmtry share/help/sl -@dirrm share/help/ru/seahorse/figures -@dirrm share/help/ru/seahorse -@dirrmtry share/help/ru -@dirrm share/help/oc/seahorse/figures -@dirrm share/help/oc/seahorse -@dirrmtry share/help/oc -@dirrm share/help/ko/seahorse/figures -@dirrm share/help/ko/seahorse -@dirrmtry share/help/ko -@dirrm share/help/ja/seahorse/figures -@dirrm share/help/ja/seahorse -@dirrmtry share/help/ja -@dirrm share/help/it/seahorse/figures -@dirrm share/help/it/seahorse -@dirrmtry share/help/it -@dirrm share/help/gl/seahorse/figures -@dirrm share/help/gl/seahorse -@dirrmtry share/help/gl -@dirrm share/help/fr/seahorse/figures -@dirrm share/help/fr/seahorse -@dirrmtry share/help/fr -@dirrm share/help/eu/seahorse/figures -@dirrm share/help/eu/seahorse -@dirrmtry share/help/eu -@dirrm share/help/es/seahorse/figures +@dirrm share/help/es/seahorse/media @dirrm share/help/es/seahorse @dirrmtry share/help/es -@dirrm share/help/en_GB/seahorse/figures -@dirrm share/help/en_GB/seahorse -@dirrmtry share/help/en_GB -@dirrm share/help/el/seahorse/figures -@dirrm share/help/el/seahorse -@dirrmtry share/help/el -@dirrm share/help/de/seahorse/figures -@dirrm share/help/de/seahorse -@dirrmtry share/help/de -@dirrm share/help/cs/seahorse/figures -@dirrm share/help/cs/seahorse -@dirrmtry share/help/cs -@dirrm share/help/ca/seahorse/figures -@dirrm share/help/ca/seahorse -@dirrmtry share/help/ca -@dirrm share/help/C/seahorse/figures +@dirrm share/help/C/seahorse/media @dirrm share/help/C/seahorse @dirrmtry share/help/C @dirrmtry share/help +@dirrmtry share/gnome-shell/search-providers +@dirrmtry share/gnome-shell +@dirrmtry share/appdata @dirrm lib/seahorse |