Example #1
0
/*!
   Reads a single mode2 sector from cd device into data starting
   from i_lsn. Returns 0 if no error. 
 */
static driver_return_code_t
read_mode2_sector_freebsd (void *p_user_data, void *data, lsn_t i_lsn,
			   bool b_form2)
{
  _img_private_t *p_env = p_user_data;

  if ( p_env->access_mode == _AM_CAM )
    return read_mode2_sector_freebsd_cam(p_env, data, i_lsn, b_form2);
  else
    return read_mode2_sector_freebsd_ioctl(p_env, data, i_lsn, b_form2);
}
Example #2
0
/*!
   Reads a single mode2 sector from cd device into data starting
   from i_lsn. Returns 0 if no error.
 */
static driver_return_code_t
read_mode2_sector_freebsd (void *p_user_data, void *data, lsn_t i_lsn,
			   bool b_form2)
{
  _img_private_t *p_env = p_user_data;

  switch (p_env->access_mode) {
    case _AM_CAM:
    case _AM_MMC_RDWR:
    case _AM_MMC_RDWR_EXCL:
    return read_mode2_sector_freebsd_cam(p_env, data, i_lsn, b_form2);
    case _AM_IOCTL:
      return read_mode2_sector_freebsd_ioctl(p_env, data, i_lsn, b_form2);
    case _AM_NONE:
      cdio_info ("access mode not set");
      return DRIVER_OP_ERROR;
  }
  return DRIVER_OP_ERROR;
}