view cinst/nss-secitemlist.c @ 751:d8c8e14b9953

Remove trustbridge-tray-starter configuration on deinstallation.
author Sascha Wilde <wilde@intevation.de>
date Fri, 04 Jul 2014 17:27:55 +0200
parents 48d7b956bd98
children f89b41fa7048
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU GPL (v>=2)
 * and comes with ABSOLUTELY NO WARRANTY!
 * See LICENSE.txt for details.
 */
#include "nss-secitemlist.h"

void
seciteml_push (seciteml_t **list, SECItem *item)
{
  seciteml_t *newlelt;
  SECItem *newitem;
  newlelt = (seciteml_t *)xmalloc( sizeof(seciteml_t) );
  newitem = (SECItem *)xmalloc( sizeof(SECItem) );
  memcpy(newitem, item, sizeof(SECItem));
  newlelt->item = newitem;
  newlelt->next = *list;
  *list = newlelt;
}

void
seciteml_free (seciteml_t **list)
{
  seciteml_t *oldlelt;

  while (*list != NULL)
    {
      oldlelt = *list;
      *list = oldlelt->next;
      free(oldlelt->item);
      free(oldlelt);
    }
}

SECItem *seciteml_pop (seciteml_t **list)
{
  seciteml_t *oldlelt;
  SECItem *item = NULL;
  
  if (*list != NULL)
    {
      oldlelt = *list;
      item = oldlelt->item;
      *list = oldlelt->next;
      free(oldlelt);
    }
  return(item);
}

http://wald.intevation.org/projects/trustbridge/