cbmimage
Loading...
Searching...
No Matches
CMD native partition specific functions

Functions

static int cbmimage_i_dnp_chdir (cbmimage_image_settings *settings, cbmimage_dir_entry *dir_entry)
 
static int cbmimage_i_dnp_set_bam (cbmimage_image_settings *settings)
 
static int cbmimage_i_dnp_get_geos_infoblock (cbmimage_image_settings *settings)
 
int cbmimage_i_dnp_chdir_partition_init (cbmimage_image_settings *settings)
 

Variables

static const cbmimage_fileimage_functions dnp_fileimage_functions
 

Detailed Description

Todo

The number of free blocks of a DNP partition is wrong. It seems that the first 64 blocks are reserved and not counted. How to be confirmed

The partition sizes are not correct. For D1M, the last block is 12/127. For D2M, it is 25/255. For D4M, it is 50/255.

Function Documentation

◆ cbmimage_i_dnp_chdir()

static int cbmimage_i_dnp_chdir ( cbmimage_image_settings * settings,
cbmimage_dir_entry * dir_entry )
static

function for chdir'ing in a DNP image

Parameters
[in]settingspointer to the image data internal settings
[in]dir_entrypointer to the dir_entry to which to chdir.
Returns
  • 0 if no error occurred
  • != 0 if an error occurred
Remarks
  • This function tests if the directory entry is actually a directory to which it can change. If it is not valid, it should return with an error value != 0. In this case, the chdir is aborted and returns with an error, too.
Todo
this function is a dummy

◆ cbmimage_i_dnp_chdir_partition_init()

int cbmimage_i_dnp_chdir_partition_init ( cbmimage_image_settings * settings)

create structures for a DNP image when chdir()ing to an image

Parameters
[in]settingspointer to the image settings
Returns
  • 0 on success
  • -1 on error

◆ cbmimage_i_dnp_get_geos_infoblock()

static int cbmimage_i_dnp_get_geos_infoblock ( cbmimage_image_settings * settings)
static

get the GEOS info block of this image has one

Parameters
[in]settingspointer to the image data internal settings
Returns
  • 0 if this is a non-GEOS image
  • != 0 if this is a GEOS image

◆ cbmimage_i_dnp_set_bam()

static int cbmimage_i_dnp_set_bam ( cbmimage_image_settings * settings)
static

Occupy additional BAM entries for DNP sub-dirs

Parameters
[in]settingspointer to the image data internal settings
Returns
  • 0 if no error occurred
  • != 0 if an error occurred
Remarks
  • This function is used after chdir'ing. In this case, the 1581 marks all blocks outside of the partition as used.

Variable Documentation

◆ dnp_fileimage_functions

const cbmimage_fileimage_functions dnp_fileimage_functions
static
Initial value:
= {
}
static int cbmimage_i_dnp_chdir(cbmimage_image_settings *settings, cbmimage_dir_entry *dir_entry)
Definition dnp.c:42
static int cbmimage_i_dnp_set_bam(cbmimage_image_settings *settings)
Definition dnp.c:89

template for the file image functions for DNP images

This is a template that is copied into the image specific data.