constraint.h   constraint.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1998, 1999, 2000, 2007 Free Software Foundation, Inc. Copyright (C) 1998-2000, 2007, 2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 debug.h   debug.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1998, 1999, 2000, 2002, 2007 Free Software Foundation, In c. Copyright (C) 1998-2000, 2002, 2007, 2009 Free Software Foundation, Inc .
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
skipping to change at line 33 skipping to change at line 33
#ifdef DEBUG #ifdef DEBUG
typedef void (PedDebugHandler) ( const int level, const char* file, int lin e, typedef void (PedDebugHandler) ( const int level, const char* file, int lin e,
const char* function, const char* msg ); const char* function, const char* msg );
extern void ped_debug_set_handler (PedDebugHandler* handler); extern void ped_debug_set_handler (PedDebugHandler* handler);
extern void ped_debug ( const int level, const char* file, int line, extern void ped_debug ( const int level, const char* file, int line,
const char* function, const char* msg, ... ); const char* function, const char* msg, ... );
extern int ped_assert ( int cond, const char* cond_text, extern void __attribute__((__noreturn__))
const char* file, int line, const char* function ); ped_assert ( const char* cond_text,
const char* file, int line, const char* function )
;
#if defined(__GNUC__) && !defined(__JSFTRACE__) #if defined __GNUC__ && !defined __JSFTRACE__
#define PED_DEBUG(level, ...) \ #define PED_DEBUG(level, ...) \
ped_debug ( level, __FILE__, __LINE__, __PRETTY_FUNCTION__, \ ped_debug ( level, __FILE__, __LINE__, __PRETTY_FUNCTION__, \
__VA_ARGS__ ); __VA_ARGS__ );
#define PED_ASSERT(cond, action) \ #define PED_ASSERT(cond, action) \
do { \ do { \
if (!ped_assert ( cond, \ if (!(cond)) { \
ped_assert ( \
#cond, \ #cond, \
__FILE__, \ __FILE__, \
__LINE__, \ __LINE__, \
__PRETTY_FUNCTION__ )) \ __PRETTY_FUNCTION__ ); \
{ \ } \
action; \
} \
} while (0) } while (0)
#else /* !__GNUC__ */ #else /* !__GNUC__ */
/* function because variadic macros are C99 */ /* function because variadic macros are C99 */
static void PED_DEBUG (int level, ...) static void PED_DEBUG (int level, ...)
{ {
va_list va_args; va_list va_args;
va_start (va_args, level); va_start (va_args, level);
ped_debug ( level, "unknown file", 0, "unknown function", va_args ) ; ped_debug ( level, "unknown file", 0, "unknown function", va_args ) ;
va_end (va_args); va_end (va_args);
} }
#define PED_ASSERT(cond, action) \ #define PED_ASSERT(cond, action) \
do { \ do { \
if (!ped_assert ( cond, \ if (!(cond)) { \
ped_assert ( \
#cond, \ #cond, \
"unknown", \ "unknown", \
0, \ 0, \
"unknown" )) \ "unknown"); \
{ \ } \
action; \
} \
} while (0) } while (0)
#endif /* __GNUC__ */ #endif /* __GNUC__ */
#else /* !DEBUG */ #else /* !DEBUG */
#define PED_ASSERT(cond, action) while (0) {} #define PED_ASSERT(cond, action) while (0) {}
#define PED_DEBUG(level, ...) while (0) {} #define PED_DEBUG(level, ...) while (0) {}
#endif /* DEBUG */ #endif /* DEBUG */
 End of changes. 7 change blocks. 
14 lines changed or deleted 14 lines changed or added


 device.h   device.h 
skipping to change at line 95 skipping to change at line 95
int dirty; int dirty;
int boot_dirty; int boot_dirty;
PedCHSGeometry hw_geom; PedCHSGeometry hw_geom;
PedCHSGeometry bios_geom; PedCHSGeometry bios_geom;
short host, did; short host, did;
void* arch_specific; void* arch_specific;
}; };
#include <parted/natmath.h>
/** /**
* List of functions implementing architecture-specific operations. * List of functions implementing architecture-specific operations.
*/ */
struct _PedDeviceArchOps { struct _PedDeviceArchOps {
PedDevice* (*_new) (const char* path); PedDevice* (*_new) (const char* path);
void (*destroy) (PedDevice* dev); void (*destroy) (PedDevice* dev);
int (*is_busy) (PedDevice* dev); int (*is_busy) (PedDevice* dev);
int (*open) (PedDevice* dev); int (*open) (PedDevice* dev);
int (*refresh_open) (PedDevice* dev); int (*refresh_open) (PedDevice* dev);
int (*close) (PedDevice* dev); int (*close) (PedDevice* dev);
int (*refresh_close) (PedDevice* dev); int (*refresh_close) (PedDevice* dev);
int (*read) (const PedDevice* dev, void* buffer, int (*read) (const PedDevice* dev, void* buffer,
PedSector start, PedSector count); PedSector start, PedSector count);
int (*write) (PedDevice* dev, const void* buffer, int (*write) (PedDevice* dev, const void* buffer,
PedSector start, PedSector count); PedSector start, PedSector count);
int (*sync) (PedDevice* dev); int (*sync) (PedDevice* dev);
int (*sync_fast) (PedDevice* dev); int (*sync_fast) (PedDevice* dev);
PedSector (*check) (PedDevice* dev, void* buffer, PedSector (*check) (PedDevice* dev, void* buffer,
PedSector start, PedSector count); PedSector start, PedSector count);
void (*probe_all) (); void (*probe_all) ();
/* These functions are optional */
PedAlignment *(*get_minimum_alignment)(const PedDevice *dev);
PedAlignment *(*get_optimum_alignment)(const PedDevice *dev);
}; };
#include <parted/constraint.h> #include <parted/constraint.h>
#include <parted/timer.h> #include <parted/timer.h>
extern void ped_device_probe_all (); extern void ped_device_probe_all ();
extern void ped_device_free_all (); extern void ped_device_free_all ();
extern PedDevice* ped_device_get (const char* name); extern PedDevice* ped_device_get (const char* name);
extern PedDevice* ped_device_get_next (const PedDevice* dev); extern PedDevice* ped_device_get_next (const PedDevice* dev);
skipping to change at line 144 skipping to change at line 149
extern int ped_device_read (const PedDevice* dev, void* buffer, extern int ped_device_read (const PedDevice* dev, void* buffer,
PedSector start, PedSector count); PedSector start, PedSector count);
extern int ped_device_write (PedDevice* dev, const void* buffer, extern int ped_device_write (PedDevice* dev, const void* buffer,
PedSector start, PedSector count); PedSector start, PedSector count);
extern int ped_device_sync (PedDevice* dev); extern int ped_device_sync (PedDevice* dev);
extern int ped_device_sync_fast (PedDevice* dev); extern int ped_device_sync_fast (PedDevice* dev);
extern PedSector ped_device_check (PedDevice* dev, void* buffer, extern PedSector ped_device_check (PedDevice* dev, void* buffer,
PedSector start, PedSector count); PedSector start, PedSector count);
extern PedConstraint* ped_device_get_constraint (PedDevice* dev); extern PedConstraint* ped_device_get_constraint (PedDevice* dev);
extern PedConstraint *ped_device_get_minimal_aligned_constraint(
const PedDevice *d
ev);
extern PedConstraint *ped_device_get_optimal_aligned_constraint(
const PedDevice *d
ev);
extern PedAlignment *ped_device_get_minimum_alignment(const PedDevice *dev)
;
extern PedAlignment *ped_device_get_optimum_alignment(const PedDevice *dev)
;
/* private stuff ;-) */ /* private stuff ;-) */
extern void _ped_device_probe (const char* path); extern void _ped_device_probe (const char* path);
#endif /* PED_DEVICE_H_INCLUDED */ #endif /* PED_DEVICE_H_INCLUDED */
/** @} */ /** @} */
 End of changes. 3 change blocks. 
0 lines changed or deleted 17 lines changed or added


 disk.h   disk.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1999, 2000, 2001, 2002, 2007, 2008 Free Software Foundati on, Inc. Copyright (C) 1999-2002, 2007-2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
skipping to change at line 30 skipping to change at line 30
* \addtogroup PedDisk * \addtogroup PedDisk
* @{ * @{
*/ */
/** \file disk.h */ /** \file disk.h */
#ifndef PED_DISK_H_INCLUDED #ifndef PED_DISK_H_INCLUDED
#define PED_DISK_H_INCLUDED #define PED_DISK_H_INCLUDED
/** /**
* Disk flags
*/
enum _PedDiskFlag {
/* This flag (which defaults to true) controls if disk types for
which cylinder alignment is optional do cylinder alignment when
a
new partition gets added.
This flag is available for msdos and sun disklabels (for sun lab
els
it only controls the aligning of the end of the partition) */
PED_DISK_CYLINDER_ALIGNMENT=1,
};
#define PED_DISK_FIRST_FLAG PED_DISK_CYLINDER_ALIGNMENT
#define PED_DISK_LAST_FLAG PED_DISK_CYLINDER_ALIGNMENT
/**
* Partition types * Partition types
*/ */
enum _PedPartitionType { enum _PedPartitionType {
PED_PARTITION_NORMAL = 0x00, PED_PARTITION_NORMAL = 0x00,
PED_PARTITION_LOGICAL = 0x01, PED_PARTITION_LOGICAL = 0x01,
PED_PARTITION_EXTENDED = 0x02, PED_PARTITION_EXTENDED = 0x02,
PED_PARTITION_FREESPACE = 0x04, PED_PARTITION_FREESPACE = 0x04,
PED_PARTITION_METADATA = 0x08, PED_PARTITION_METADATA = 0x08,
PED_PARTITION_PROTECTED = 0x10 PED_PARTITION_PROTECTED = 0x10
}; };
skipping to change at line 56 skipping to change at line 70
PED_PARTITION_ROOT=2, PED_PARTITION_ROOT=2,
PED_PARTITION_SWAP=3, PED_PARTITION_SWAP=3,
PED_PARTITION_HIDDEN=4, PED_PARTITION_HIDDEN=4,
PED_PARTITION_RAID=5, PED_PARTITION_RAID=5,
PED_PARTITION_LVM=6, PED_PARTITION_LVM=6,
PED_PARTITION_LBA=7, PED_PARTITION_LBA=7,
PED_PARTITION_HPSERVICE=8, PED_PARTITION_HPSERVICE=8,
PED_PARTITION_PALO=9, PED_PARTITION_PALO=9,
PED_PARTITION_PREP=10, PED_PARTITION_PREP=10,
PED_PARTITION_MSFT_RESERVED=11, PED_PARTITION_MSFT_RESERVED=11,
PED_PARTITION_BIOS_GRUB=12 PED_PARTITION_BIOS_GRUB=12,
PED_PARTITION_APPLE_TV_RECOVERY=13
}; };
#define PED_PARTITION_FIRST_FLAG PED_PARTITION_BOOT #define PED_PARTITION_FIRST_FLAG PED_PARTITION_BOOT
#define PED_PARTITION_LAST_FLAG PED_PARTITION_BIOS_GRUB #define PED_PARTITION_LAST_FLAG PED_PARTITION_APPLE_TV_RECOVERY
enum _PedDiskTypeFeature { enum _PedDiskTypeFeature {
PED_DISK_TYPE_EXTENDED=1, /**< supports extended partitions * / PED_DISK_TYPE_EXTENDED=1, /**< supports extended partitions * /
PED_DISK_TYPE_PARTITION_NAME=2 /**< supports partition names */ PED_DISK_TYPE_PARTITION_NAME=2 /**< supports partition names */
}; };
#define PED_DISK_TYPE_FIRST_FEATURE PED_DISK_TYPE_EXTENDED #define PED_DISK_TYPE_FIRST_FEATURE PED_DISK_TYPE_EXTENDED
#define PED_DISK_TYPE_LAST_FEATURE PED_DISK_TYPE_PARTITION_NAME #define PED_DISK_TYPE_LAST_FEATURE PED_DISK_TYPE_PARTITION_NAME
struct _PedDisk; struct _PedDisk;
struct _PedPartition; struct _PedPartition;
struct _PedDiskOps; struct _PedDiskOps;
struct _PedDiskType; struct _PedDiskType;
struct _PedDiskArchOps; struct _PedDiskArchOps;
typedef enum _PedDiskFlag PedDiskFlag;
typedef enum _PedPartitionType PedPartitionType; typedef enum _PedPartitionType PedPartitionType;
typedef enum _PedPartitionFlag PedPartitionFlag; typedef enum _PedPartitionFlag PedPartitionFlag;
typedef enum _PedDiskTypeFeature PedDiskTypeFeature; typedef enum _PedDiskTypeFeature PedDiskTypeFeature;
typedef struct _PedDisk PedDisk; typedef struct _PedDisk PedDisk;
typedef struct _PedPartition PedPartition; typedef struct _PedPartition PedPartition;
typedef const struct _PedDiskOps PedDiskOps; typedef const struct _PedDiskOps PedDiskOps;
typedef struct _PedDiskType PedDiskType; typedef struct _PedDiskType PedDiskType;
typedef const struct _PedDiskArchOps PedDiskArchOps; typedef const struct _PedDiskArchOps PedDiskArchOps;
#include <parted/device.h> #include <parted/device.h>
skipping to change at line 182 skipping to change at line 198
struct _PedDiskOps { struct _PedDiskOps {
/* disk label operations */ /* disk label operations */
int (*probe) (const PedDevice *dev); int (*probe) (const PedDevice *dev);
int (*clobber) (PedDevice* dev); int (*clobber) (PedDevice* dev);
PedDisk* (*alloc) (const PedDevice* dev); PedDisk* (*alloc) (const PedDevice* dev);
PedDisk* (*duplicate) (const PedDisk* disk); PedDisk* (*duplicate) (const PedDisk* disk);
void (*free) (PedDisk* disk); void (*free) (PedDisk* disk);
int (*read) (PedDisk* disk); int (*read) (PedDisk* disk);
int (*write) (const PedDisk* disk); int (*write) (const PedDisk* disk);
int (*disk_set_flag) (
PedDisk *disk,
PedDiskFlag flag,
int state);
int (*disk_get_flag) (
const PedDisk *disk,
PedDiskFlag flag);
int (*disk_is_flag_available) (
const PedDisk *disk,
PedDiskFlag flag);
/** \todo add label guessing op here */ /** \todo add label guessing op here */
/* partition operations */ /* partition operations */
PedPartition* (*partition_new) ( PedPartition* (*partition_new) (
const PedDisk* disk, const PedDisk* disk,
PedPartitionType part_type, PedPartitionType part_type,
const PedFileSystemType* fs_type, const PedFileSystemType* fs_type,
PedSector start, PedSector start,
PedSector end); PedSector end);
PedPartition* (*partition_duplicate) (const PedPartition* part); PedPartition* (*partition_duplicate) (const PedPartition* part);
skipping to change at line 210 skipping to change at line 236
const PedPartition* part, const PedPartition* part,
PedPartitionFlag flag); PedPartitionFlag flag);
int (*partition_is_flag_available) ( int (*partition_is_flag_available) (
const PedPartition* part, const PedPartition* part,
PedPartitionFlag flag); PedPartitionFlag flag);
void (*partition_set_name) (PedPartition* part, const char* name); void (*partition_set_name) (PedPartition* part, const char* name);
const char* (*partition_get_name) (const PedPartition* part); const char* (*partition_get_name) (const PedPartition* part);
int (*partition_align) (PedPartition* part, int (*partition_align) (PedPartition* part,
const PedConstraint* constraint); const PedConstraint* constraint);
int (*partition_enumerate) (PedPartition* part); int (*partition_enumerate) (PedPartition* part);
bool (*partition_check) (const PedPartition* part);
/* other */ /* other */
int (*alloc_metadata) (PedDisk* disk); int (*alloc_metadata) (PedDisk* disk);
int (*get_max_primary_partition_count) (const PedDisk* disk); int (*get_max_primary_partition_count) (const PedDisk* disk);
bool (*get_max_supported_partition_count) (const PedDisk* disk, bool (*get_max_supported_partition_count) (const PedDisk* disk,
int* supported); int* supported);
PedAlignment *(*get_partition_alignment)(const PedDisk *disk);
PedSector (*max_length) (void);
PedSector (*max_start_sector) (void);
}; };
struct _PedDiskType { struct _PedDiskType {
PedDiskType* next; PedDiskType* next;
const char* name; /**< the name of the partition table type. const char* name; /**< the name of the partition table type.
\todo not very intuitive name */ \todo not very intuitive name */
PedDiskOps* const ops; PedDiskOps* const ops;
PedDiskTypeFeature features; /**< bitmap of supported featur es */ PedDiskTypeFeature features; /**< bitmap of supported featur es */
}; };
skipping to change at line 240 skipping to change at line 270
*/ */
struct _PedDiskArchOps { struct _PedDiskArchOps {
char* (*partition_get_path) (const PedPartition* part); char* (*partition_get_path) (const PedPartition* part);
int (*partition_is_busy) (const PedPartition* part); int (*partition_is_busy) (const PedPartition* part);
int (*disk_commit) (PedDisk* disk); int (*disk_commit) (PedDisk* disk);
}; };
extern void ped_disk_type_register (PedDiskType* type); extern void ped_disk_type_register (PedDiskType* type);
extern void ped_disk_type_unregister (PedDiskType* type); extern void ped_disk_type_unregister (PedDiskType* type);
extern PedDiskType* ped_disk_type_get_next (PedDiskType* type); extern PedDiskType* ped_disk_type_get_next (PedDiskType const *type);
extern PedDiskType* ped_disk_type_get (const char* name); extern PedDiskType* ped_disk_type_get (const char* name);
extern int ped_disk_type_check_feature (const PedDiskType* disk_type, extern int ped_disk_type_check_feature (const PedDiskType* disk_type,
PedDiskTypeFeature feature); PedDiskTypeFeature feature);
extern PedDiskType* ped_disk_probe (PedDevice* dev); extern PedDiskType* ped_disk_probe (PedDevice* dev);
extern int ped_disk_clobber (PedDevice* dev); extern int ped_disk_clobber (PedDevice* dev);
extern int ped_disk_clobber_exclude (PedDevice* dev,
const PedDiskType* exclude);
extern PedDisk* ped_disk_new (PedDevice* dev); extern PedDisk* ped_disk_new (PedDevice* dev);
extern PedDisk* ped_disk_new_fresh (PedDevice* dev, extern PedDisk* ped_disk_new_fresh (PedDevice* dev,
const PedDiskType* disk_type); const PedDiskType* disk_type);
extern PedDisk* ped_disk_duplicate (const PedDisk* old_disk); extern PedDisk* ped_disk_duplicate (const PedDisk* old_disk);
extern void ped_disk_destroy (PedDisk* disk); extern void ped_disk_destroy (PedDisk* disk);
extern int ped_disk_commit (PedDisk* disk); extern int ped_disk_commit (PedDisk* disk);
extern int ped_disk_commit_to_dev (PedDisk* disk); extern int ped_disk_commit_to_dev (PedDisk* disk);
extern int ped_disk_commit_to_os (PedDisk* disk); extern int ped_disk_commit_to_os (PedDisk* disk);
extern int ped_disk_check (const PedDisk* disk); extern int ped_disk_check (const PedDisk* disk);
extern void ped_disk_print (const PedDisk* disk); extern void ped_disk_print (const PedDisk* disk);
extern int ped_disk_get_primary_partition_count (const PedDisk* disk); extern int ped_disk_get_primary_partition_count (const PedDisk* disk);
extern int ped_disk_get_last_partition_num (const PedDisk* disk); extern int ped_disk_get_last_partition_num (const PedDisk* disk);
extern int ped_disk_get_max_primary_partition_count (const PedDisk* disk); extern int ped_disk_get_max_primary_partition_count (const PedDisk* disk);
extern bool ped_disk_get_max_supported_partition_count(const PedDisk* disk, extern bool ped_disk_get_max_supported_partition_count(const PedDisk* disk,
int* supported); int* supported);
extern PedAlignment *ped_disk_get_partition_alignment(const PedDisk *disk);
extern int ped_disk_set_flag(PedDisk *disk, PedDiskFlag flag, int state);
extern int ped_disk_get_flag(const PedDisk *disk, PedDiskFlag flag);
extern int ped_disk_is_flag_available(const PedDisk *disk, PedDiskFlag flag
);
extern const char *ped_disk_flag_get_name(PedDiskFlag flag);
extern PedDiskFlag ped_disk_flag_get_by_name(const char *name);
extern PedDiskFlag ped_disk_flag_next(PedDiskFlag flag);
/** @} */ /** @} */
/** /**
* \addtogroup PedPartition * \addtogroup PedPartition
* *
* @{ * @{
*/ */
extern PedPartition* ped_partition_new (const PedDisk* disk, extern PedPartition* ped_partition_new (const PedDisk* disk,
skipping to change at line 327 skipping to change at line 364
PedPartition* part, const PedConstraint* constraint); PedPartition* part, const PedConstraint* constraint);
extern int ped_disk_minimize_extended_partition (PedDisk* disk); extern int ped_disk_minimize_extended_partition (PedDisk* disk);
extern PedPartition* ped_disk_next_partition (const PedDisk* disk, extern PedPartition* ped_disk_next_partition (const PedDisk* disk,
const PedPartition* part); const PedPartition* part);
extern PedPartition* ped_disk_get_partition (const PedDisk* disk, int num); extern PedPartition* ped_disk_get_partition (const PedDisk* disk, int num);
extern PedPartition* ped_disk_get_partition_by_sector (const PedDisk* disk, extern PedPartition* ped_disk_get_partition_by_sector (const PedDisk* disk,
PedSector sect); PedSector sect);
extern PedPartition* ped_disk_extended_partition (const PedDisk* disk); extern PedPartition* ped_disk_extended_partition (const PedDisk* disk);
extern PedSector ped_disk_max_partition_length (const PedDisk *disk);
extern PedSector ped_disk_max_partition_start_sector (const PedDisk *disk);
/* internal functions */ /* internal functions */
extern PedDisk* _ped_disk_alloc (const PedDevice* dev, const PedDiskType* t ype); extern PedDisk* _ped_disk_alloc (const PedDevice* dev, const PedDiskType* t ype);
extern void _ped_disk_free (PedDisk* disk); extern void _ped_disk_free (PedDisk* disk);
/** @} */ /** @} */
/** /**
* \addtogroup PedPartition * \addtogroup PedPartition
* *
* @{ * @{
 End of changes. 12 change blocks. 
6 lines changed or deleted 49 lines changed or added


 exception.h   exception.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1999, 2000, 2007 Free Software Foundation, Inc. Copyright (C) 1999-2000, 2007, 2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 filesys.h   filesys.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1999, 2000, 2001, 2006, 2007 Free Software Foundation, In c. Copyright (C) 1999-2001, 2006-2007, 2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 geom.h   geom.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1998-2001, 2005, 2006, 2007 Free Software Foundation, Inc . Copyright (C) 1998-2001, 2005, 2007, 2009 Free Software Foundation, Inc .
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
skipping to change at line 66 skipping to change at line 66
extern int ped_geometry_test_overlap (const PedGeometry* a, extern int ped_geometry_test_overlap (const PedGeometry* a,
const PedGeometry* b); const PedGeometry* b);
extern int ped_geometry_test_inside (const PedGeometry* a, extern int ped_geometry_test_inside (const PedGeometry* a,
const PedGeometry* b); const PedGeometry* b);
extern int ped_geometry_test_equal (const PedGeometry* a, const PedGeometry * b); extern int ped_geometry_test_equal (const PedGeometry* a, const PedGeometry * b);
extern int ped_geometry_test_sector_inside (const PedGeometry* geom, extern int ped_geometry_test_sector_inside (const PedGeometry* geom,
PedSector sect); PedSector sect);
extern int ped_geometry_read (const PedGeometry* geom, void* buffer, extern int ped_geometry_read (const PedGeometry* geom, void* buffer,
PedSector offset, PedSector count); PedSector offset, PedSector count);
extern int ped_geometry_read_alloc (const PedGeometry* geom, void** buffer,
PedSector offset, PedSector count);
extern int ped_geometry_write (PedGeometry* geom, const void* buffer, extern int ped_geometry_write (PedGeometry* geom, const void* buffer,
PedSector offset, PedSector count); PedSector offset, PedSector count);
extern PedSector ped_geometry_check (PedGeometry* geom, void* buffer, extern PedSector ped_geometry_check (PedGeometry* geom, void* buffer,
PedSector buffer_size, PedSector offset , PedSector buffer_size, PedSector offset ,
PedSector granularity, PedSector count, PedSector granularity, PedSector count,
PedTimer* timer); PedTimer* timer);
extern int ped_geometry_sync (PedGeometry* geom); extern int ped_geometry_sync (PedGeometry* geom);
extern int ped_geometry_sync_fast (PedGeometry* geom); extern int ped_geometry_sync_fast (PedGeometry* geom);
/* returns -1 if "sector" is not within dest's space. */ /* returns -1 if "sector" is not within dest's space. */
 End of changes. 2 change blocks. 
1 lines changed or deleted 3 lines changed or added


 natmath.h   natmath.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 2000, 2007, 2008 Free Software Foundation, Inc. Copyright (C) 2000, 2007-2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
skipping to change at line 33 skipping to change at line 33
/** \file natmath.h */ /** \file natmath.h */
#ifndef PED_NATMATH_H_INCLUDED #ifndef PED_NATMATH_H_INCLUDED
#define PED_NATMATH_H_INCLUDED #define PED_NATMATH_H_INCLUDED
typedef struct _PedAlignment PedAlignment; typedef struct _PedAlignment PedAlignment;
#include <parted/disk.h> #include <parted/disk.h>
#include <parted/device.h> #include <parted/device.h>
#include <parted/geom.h>
#define PED_MIN(a, b) ( ((a)<(b)) ? (a) : (b) ) #define PED_MIN(a, b) ( ((a)<(b)) ? (a) : (b) )
#define PED_MAX(a, b) ( ((a)>(b)) ? (a) : (b) ) #define PED_MAX(a, b) ( ((a)>(b)) ? (a) : (b) )
/* this is weird (I'm still not sure I should be doing this!) /* this is weird (I'm still not sure I should be doing this!)
* *
* For the functions: new, destroy, duplicate and merge: the following valu es * For the functions: new, destroy, duplicate and merge: the following valu es
* for align are valid: * for align are valid:
* * align == NULL (!) represents no solution * * align == NULL (!) represents no solution
* * align->grain_size == 0 represents a single solution * * align->grain_size == 0 represents a single solution
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 parted.h   parted.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 1999, 2000, 2001, 2007 Free Software Foundation, Inc. Copyright (C) 1999-2001, 2007, 2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 timer.h   timer.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc. Copyright (C) 2001-2002, 2007, 2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 unit.h   unit.h 
/* /*
libparted - a library for manipulating disk partitions libparted - a library for manipulating disk partitions
Copyright (C) 2005, 2007 Free Software Foundation, Inc. Copyright (C) 2005, 2007, 2009 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or the Free Software Foundation; either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/