xref: /dflybsd-src/usr.sbin/installer/dfuibe_installer/fn.h (revision 242084fd773a8559267ade92aa9dab50f22aedbf)
121c1c48aSSascha Wildner /*
221c1c48aSSascha Wildner  * Copyright (c)2004 The DragonFly Project.  All rights reserved.
321c1c48aSSascha Wildner  *
421c1c48aSSascha Wildner  * Redistribution and use in source and binary forms, with or without
521c1c48aSSascha Wildner  * modification, are permitted provided that the following conditions
621c1c48aSSascha Wildner  * are met:
721c1c48aSSascha Wildner  *
821c1c48aSSascha Wildner  *   Redistributions of source code must retain the above copyright
921c1c48aSSascha Wildner  *   notice, this list of conditions and the following disclaimer.
1021c1c48aSSascha Wildner  *
1121c1c48aSSascha Wildner  *   Redistributions in binary form must reproduce the above copyright
1221c1c48aSSascha Wildner  *   notice, this list of conditions and the following disclaimer in
1321c1c48aSSascha Wildner  *   the documentation and/or other materials provided with the
1421c1c48aSSascha Wildner  *   distribution.
1521c1c48aSSascha Wildner  *
1621c1c48aSSascha Wildner  *   Neither the name of the DragonFly Project nor the names of its
1721c1c48aSSascha Wildner  *   contributors may be used to endorse or promote products derived
1821c1c48aSSascha Wildner  *   from this software without specific prior written permission.
1921c1c48aSSascha Wildner  *
2021c1c48aSSascha Wildner  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
2121c1c48aSSascha Wildner  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
2221c1c48aSSascha Wildner  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
2321c1c48aSSascha Wildner  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
2421c1c48aSSascha Wildner  * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
2521c1c48aSSascha Wildner  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
2621c1c48aSSascha Wildner  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
2721c1c48aSSascha Wildner  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2821c1c48aSSascha Wildner  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
2921c1c48aSSascha Wildner  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
3021c1c48aSSascha Wildner  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
3121c1c48aSSascha Wildner  * OF THE POSSIBILITY OF SUCH DAMAGE.
3221c1c48aSSascha Wildner  */
3321c1c48aSSascha Wildner 
3421c1c48aSSascha Wildner /*
3521c1c48aSSascha Wildner  * fn.h
3621c1c48aSSascha Wildner  * $Id: fn.h,v 1.3 2005/02/07 06:46:20 cpressey Exp $
3721c1c48aSSascha Wildner  */
3821c1c48aSSascha Wildner 
3921c1c48aSSascha Wildner #ifndef __FN_H_
4021c1c48aSSascha Wildner #define __FN_H_
4121c1c48aSSascha Wildner 
4221c1c48aSSascha Wildner #include "libaura/dict.h"
4321c1c48aSSascha Wildner #include "libdfui/dfui.h"
4421c1c48aSSascha Wildner 
4521c1c48aSSascha Wildner #include "libinstaller/functions.h"
4621c1c48aSSascha Wildner 
4721c1c48aSSascha Wildner /*** PROTOTYPES ***/
4821c1c48aSSascha Wildner 
4921c1c48aSSascha Wildner /* General fn_ functions */
5021c1c48aSSascha Wildner 
5121c1c48aSSascha Wildner void		 fn_select_disk(struct i_fn_args *);
5221c1c48aSSascha Wildner void		 fn_select_slice(struct i_fn_args *);
53*242084fdSAaron LI void		 fn_get_passphrase(struct i_fn_args *, int);
5421c1c48aSSascha Wildner 
5521c1c48aSSascha Wildner /* Configure an Installed System (only) */
5621c1c48aSSascha Wildner 
5721c1c48aSSascha Wildner void 		 fn_root_passwd(struct i_fn_args *);
5821c1c48aSSascha Wildner void 		 fn_add_user(struct i_fn_args *);
5921c1c48aSSascha Wildner void		 fn_select_services(struct i_fn_args *);
6021c1c48aSSascha Wildner 
6121c1c48aSSascha Wildner int		 mount_target_system(struct i_fn_args *);
6221c1c48aSSascha Wildner 
6321c1c48aSSascha Wildner /* Configure the LiveCD Environment -or- an Installed System */
6421c1c48aSSascha Wildner 
6521c1c48aSSascha Wildner void		 fn_assign_datetime(struct i_fn_args *);
6621c1c48aSSascha Wildner void		 fn_set_timezone(struct i_fn_args *);
6721c1c48aSSascha Wildner void 		 fn_set_kbdmap(struct i_fn_args *);
6821c1c48aSSascha Wildner void 		 fn_set_vidfont(struct i_fn_args *);
6921c1c48aSSascha Wildner void 		 fn_set_scrnmap(struct i_fn_args *);
7021c1c48aSSascha Wildner void		 fn_assign_hostname_domain(struct i_fn_args *);
7121c1c48aSSascha Wildner void		 fn_assign_ip(struct i_fn_args *);
7221c1c48aSSascha Wildner 
7321c1c48aSSascha Wildner /* LiveCD Utilities: Diagnostics */
7421c1c48aSSascha Wildner 
7521c1c48aSSascha Wildner void		 fn_show_dmesg(struct i_fn_args *);
7621c1c48aSSascha Wildner void		 fn_show_pciconf(struct i_fn_args *);
7721c1c48aSSascha Wildner void		 fn_show_natacontrol(struct i_fn_args *);
7821c1c48aSSascha Wildner 
7921c1c48aSSascha Wildner void		 show_ifconfig(struct dfui_connection *, char *);
8021c1c48aSSascha Wildner 
8121c1c48aSSascha Wildner /* LiveCD Utilties: Disk Utilities */
8221c1c48aSSascha Wildner 
8321c1c48aSSascha Wildner char		*fn_select_file(const char *, const char *, const char *,
8421c1c48aSSascha Wildner 				const char *, const char *, const char *,
8521c1c48aSSascha Wildner 				const struct i_fn_args *);
8621c1c48aSSascha Wildner 
877b1aa074SSascha Wildner void		 fn_format_disk_mbr(struct i_fn_args *);
887b1aa074SSascha Wildner void		 fn_format_disk_uefi(struct i_fn_args *);
89e75c9034SSascha Wildner void		 fn_install_bootblocks(struct i_fn_args *, const char *device);
9021c1c48aSSascha Wildner void		 fn_wipe_start_of_disk(struct i_fn_args *);
9121c1c48aSSascha Wildner void		 fn_wipe_start_of_slice(struct i_fn_args *);
9221c1c48aSSascha Wildner void		 fn_format_msdos_floppy(struct i_fn_args *);
9321c1c48aSSascha Wildner void		 fn_create_cdboot_floppy(struct i_fn_args *);
9421c1c48aSSascha Wildner 
9521c1c48aSSascha Wildner int		 format_slice(struct i_fn_args *);
9621c1c48aSSascha Wildner 
9721c1c48aSSascha Wildner void		 fn_create_subpartitions_ufs(struct i_fn_args *);
98e90c1ebbSMatthew Dillon void		 fn_create_subpartitions_hammer(int which, struct i_fn_args *);
9921c1c48aSSascha Wildner void		 fn_install_os(struct i_fn_args *);
10021c1c48aSSascha Wildner 
10121c1c48aSSascha Wildner /* Global variables */
10221c1c48aSSascha Wildner 
10314825f9dSSascha Wildner extern struct	config_vars *rc_conf;
10421c1c48aSSascha Wildner 
10521c1c48aSSascha Wildner #endif /* !__FN_H_ */
106