summaryrefslogtreecommitdiffstats
path: root/src/addpartn.c
diff options
context:
space:
mode:
authorChristophe Grenier <grenier@cgsecurity.org>2013-05-15 17:53:26 +0200
committerChristophe Grenier <grenier@cgsecurity.org>2013-05-15 17:53:26 +0200
commit816032140813972e230863a002b4acd1b15d2bcf (patch)
tree9c2b26ea8c5680b6127217c7c3933fb8f5c30252 /src/addpartn.c
parent2dd9cec608a056ded9df373610854918f492a339 (diff)
split add_partition() into add_partition_cli() and add_partition_ncurses()
Diffstat (limited to 'src/addpartn.c')
-rw-r--r--src/addpartn.c61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/addpartn.c b/src/addpartn.c
new file mode 100644
index 0000000..948a361
--- /dev/null
+++ b/src/addpartn.c
@@ -0,0 +1,61 @@
+/*
+
+ File: addpartn.c
+
+ Copyright (C) 1998-2013 Christophe GRENIER <grenier@cgsecurity.org>
+
+ This software 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 the Free Software Foundation, Inc., 51
+ Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include "types.h"
+#include "common.h"
+#include "parti386.h"
+#include "partgpt.h"
+#include "partmac.h"
+#include "partsun.h"
+#include "partxbox.h"
+#include "parti386n.h"
+#include "partgptn.h"
+#include "partmacn.h"
+#include "partsunn.h"
+#include "partxboxn.h"
+#include "addpartn.h"
+
+extern const arch_fnct_t arch_gpt;
+extern const arch_fnct_t arch_i386;
+extern const arch_fnct_t arch_mac;
+extern const arch_fnct_t arch_sun;
+extern const arch_fnct_t arch_xbox;
+
+list_part_t *add_partition_ncurses(disk_t *disk, list_part_t *list_part)
+{
+ if(disk->arch==&arch_gpt)
+ return add_partition_gpt_ncurses(disk, list_part);
+ else if(disk->arch==&arch_i386)
+ return add_partition_i386_ncurses(disk, list_part);
+ else if(disk->arch==&arch_mac)
+ return add_partition_mac_ncurses(disk, list_part);
+ else if(disk->arch==&arch_sun)
+ return add_partition_sun_ncurses(disk, list_part);
+ else if(disk->arch==&arch_xbox)
+ return add_partition_xbox_ncurses(disk, list_part);
+ return list_part;
+}