switch (c) {
case 'a':
if (fdisk_is_disklabel(cxt, SUN))
- sun_set_alt_cyl(cxt);
+ fdisk_sun_set_alt_cyl(cxt);
break;
case 'b':
if (fdisk_is_disklabel(cxt, DOS))
_("Number of cylinders"));
fdisk_override_geometry(cxt, user_cylinders, user_heads, user_sectors);
if (fdisk_is_disklabel(cxt, SUN))
- sun_set_ncyl(cxt, cxt->geom.cylinders);
+ fdisk_sun_set_ncyl(cxt, cxt->geom.cylinders);
break;
case 'd':
print_raw(cxt);
if (fdisk_is_disklabel(cxt, SGI))
sgi_set_xcyl();
else if (fdisk_is_disklabel(cxt, SUN))
- sun_set_xcyl(cxt);
+ fdisk_sun_set_xcyl(cxt);
else
if (fdisk_is_disklabel(cxt, DOS))
dos_list_table_expert(cxt, 1);
break;
case 'i':
if (fdisk_is_disklabel(cxt, SUN))
- sun_set_ilfact(cxt);
+ fdisk_sun_set_ilfact(cxt);
else if (fdisk_is_disklabel(cxt, DOS))
dos_set_mbr_id(cxt);
break;
case 'o':
if (fdisk_is_disklabel(cxt, SUN))
- sun_set_rspeed(cxt);
+ fdisk_sun_set_rspeed(cxt);
break;
case 'p':
if (fdisk_is_disklabel(cxt, SUN))
break;
case 'y':
if (fdisk_is_disklabel(cxt, SUN))
- sun_set_pcylcount(cxt);
+ fdisk_sun_set_pcylcount(cxt);
break;
default:
print_menu(cxt, EXPERT_MENU);
break;
case 'c':
if (optarg) {
+ /* this setting is independent on the current
+ * actively used label */
lb = fdisk_context_get_label(cxt, "dos");
if (!lb)
err(EXIT_FAILURE, _("not found DOS label driver"));
}
-void sun_set_alt_cyl(struct fdisk_context *cxt)
+void fdisk_sun_set_alt_cyl(struct fdisk_context *cxt)
{
struct sun_disklabel *sunlabel = self_disklabel(cxt);
uintmax_t res;
sunlabel->acyl = cpu_to_be16(res);
}
-void sun_set_ncyl(struct fdisk_context *cxt, int cyl)
+void fdisk_sun_set_ncyl(struct fdisk_context *cxt, int cyl)
{
struct sun_disklabel *sunlabel = self_disklabel(cxt);
sunlabel->ncyl = cpu_to_be16(cyl);
}
-void sun_set_xcyl(struct fdisk_context *cxt)
+void fdisk_sun_set_xcyl(struct fdisk_context *cxt)
{
struct sun_disklabel *sunlabel = self_disklabel(cxt);
uintmax_t res;
sunlabel->apc = cpu_to_be16(res);
}
-void sun_set_ilfact(struct fdisk_context *cxt)
+void fdisk_sun_set_ilfact(struct fdisk_context *cxt)
{
struct sun_disklabel *sunlabel = self_disklabel(cxt);
uintmax_t res;
sunlabel->intrlv = cpu_to_be16(res);
}
-void sun_set_rspeed(struct fdisk_context *cxt)
+void fdisk_sun_set_rspeed(struct fdisk_context *cxt)
{
struct sun_disklabel *sunlabel = self_disklabel(cxt);
uintmax_t res;
}
-void sun_set_pcylcount(struct fdisk_context *cxt)
+void fdisk_sun_set_pcylcount(struct fdisk_context *cxt)
{
struct sun_disklabel *sunlabel = self_disklabel(cxt);
uintmax_t res;
#include "pt-sun.h"
+/* public SUN specific functions (TODO: move to libfdisk.h) */
+extern void fdisk_sun_set_alt_cyl(struct fdisk_context *cxt);
+extern void fdisk_sun_set_ncyl(struct fdisk_context *cxt, int cyl);
+extern void fdisk_sun_set_xcyl(struct fdisk_context *cxt);
+extern void fdisk_sun_set_ilfact(struct fdisk_context *cxt);
+extern void fdisk_sun_set_rspeed(struct fdisk_context *cxt);
+extern void fdisk_sun_set_pcylcount(struct fdisk_context *cxt);
+
/* fdisksunlabel.c */
extern void sun_list_table(struct fdisk_context *cxt, int xtra);
-extern void sun_set_alt_cyl(struct fdisk_context *cxt);
-extern void sun_set_ncyl(struct fdisk_context *cxt, int cyl);
-extern void sun_set_xcyl(struct fdisk_context *cxt);
-extern void sun_set_ilfact(struct fdisk_context *cxt);
-extern void sun_set_rspeed(struct fdisk_context *cxt);
-extern void sun_set_pcylcount(struct fdisk_context *cxt);
extern void toggle_sunflags(struct fdisk_context *cxt, size_t i, uint16_t mask);