/*
* Copyright (C) 2006-2007 Andre Noll <maan@systemlinux.org>
*
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
+ * Licensed under the GPL v2. For licencing details see COPYING.
*/
/** \file user_list.c user handling for para_server */
+#include <sys/types.h>
+#include <dirent.h>
+
#include "para.h"
#include "error.h"
#include "fd.h"
#include "string.h"
+#include "list.h"
#include "user_list.h"
static struct list_head user_list;
PARA_DEBUG_LOG("found entry for %s\n", n);
u = para_malloc(sizeof(struct user));
u->name = para_strdup(n);
- u->rsa = para_malloc(sizeof(RSA));
ret = get_rsa_key(k, &u->rsa, LOAD_PUBLIC_KEY);
if (ret < 0)
break;
- u->perms = 0;
char_ptr = p;
num = sscanf(char_ptr, "%200[A-Z_],%200[A-Z_],%200[A-Z_],%200[A-Z_]",
tmp[0], tmp[1], tmp[2], tmp[3]);
u->perms |= VSS_READ;
else if (!strcmp(tmp[num], "VSS_WRITE"))
u->perms |= VSS_WRITE;
- else if (!strcmp(tmp[num], "DB_READ"))
- u->perms |= DB_READ;
- else if (!strcmp(tmp[num], "DB_WRITE"))
- u->perms |= DB_WRITE;
+ else if (!strcmp(tmp[num], "AFS_READ"))
+ u->perms |= AFS_READ;
+ else if (!strcmp(tmp[num], "AFS_WRITE"))
+ u->perms |= AFS_WRITE;
else /* unknown permission */
PARA_WARNING_LOG("ignoring unknown permission: %s\n",
tmp[num]);
list_for_each_entry_safe(u, tmp, &user_list, node) {
list_del(&u->node);
free(u->name);
- free(u->rsa);
+ rsa_free(u->rsa);
free(u);
}
} else