1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2011 Nathan Whitehorn
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 *
28 * $FreeBSD$
29 */
30
31 #include <string.h>
32
33 #include "partedit.h"
34
35 const char *
default_scheme(void)36 default_scheme(void) {
37 /*
38 * Our loader can parse GPT, so pick that as the default for lack of
39 * a better idea.
40 */
41
42 return ("GPT");
43 }
44
45 int
is_scheme_bootable(const char * part_type)46 is_scheme_bootable(const char *part_type) {
47 /*
48 * We don't know anything about this platform, so don't irritate the
49 * user by claiming the chosen partition scheme isn't bootable.
50 */
51
52 return (1);
53 }
54
55 int
is_fs_bootable(const char * part_type,const char * fs)56 is_fs_bootable(const char *part_type, const char *fs) {
57 return (1);
58 }
59
60 /* No clue => no boot partition, bootcode, or partcode */
61
62 size_t
bootpart_size(const char * part_type)63 bootpart_size(const char *part_type) {
64 return (0);
65 }
66
67 const char *
bootpart_type(const char * scheme,const char ** mountpoint)68 bootpart_type(const char *scheme, const char **mountpoint) {
69 return ("freebsd-boot");
70 }
71
72 const char *
bootcode_path(const char * part_type)73 bootcode_path(const char *part_type) {
74 return (NULL);
75 }
76
77 const char *
partcode_path(const char * part_type,const char * fs_type)78 partcode_path(const char *part_type, const char *fs_type) {
79 return (NULL);
80 }
81
82