You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.0 KiB
42 lines
1.0 KiB
/* ----------------------------------------------------------------------- * |
|
* |
|
* Copyright 2013 Intel Corporation; author: Matt Fleming |
|
* |
|
* 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, Inc., 51 Franklin St, Fifth Floor, |
|
* Boston MA 02110-1301, USA; either version 2 of the License, or |
|
* (at your option) any later version; incorporated herein by reference. |
|
* |
|
* ----------------------------------------------------------------------- */ |
|
|
|
#include <klibc/compiler.h> |
|
#include <linux/list.h> |
|
#include <fs.h> |
|
#include <string.h> |
|
|
|
__export LIST_HEAD(PATH); |
|
|
|
__export struct path_entry *path_add(const char *str) |
|
{ |
|
struct path_entry *entry; |
|
|
|
if (!strlen(str)) |
|
return NULL; |
|
|
|
entry = malloc(sizeof(*entry)); |
|
if (!entry) |
|
return NULL; |
|
|
|
entry->str = strdup(str); |
|
if (!entry->str) |
|
goto bail; |
|
|
|
list_add(&entry->list, &PATH); |
|
|
|
return entry; |
|
|
|
bail: |
|
free(entry); |
|
return NULL; |
|
}
|
|
|