Add DRIVER_OP_UNINIT and change appropriate DRIVER_OP_ERROR's to

DRIVER_OP_UNINIT.
This commit is contained in:
rocky
2005-01-20 00:36:38 +00:00
parent 8588f4ae8e
commit f7ebed2287
6 changed files with 24 additions and 20 deletions

View File

@@ -1,5 +1,5 @@
/* -*- c -*-
$Id: device.h,v 1.5 2005/01/19 09:23:24 rocky Exp $
$Id: device.h,v 1.6 2005/01/20 00:36:38 rocky Exp $
Copyright (C) 2005 Rocky Bernstein <rocky@panix.com>
@@ -108,6 +108,10 @@ extern "C" {
hardware driver, then the value will be DRIVER_UNKNOWN.
*/
typedef enum {
DRIVER_OP_UNINIT = -3, /**< returned when a particular driver
hasn't been initialized or a null
CdIo_t pointer has been passed.
*/
DRIVER_OP_UNSUPPORTED = -2, /**< returned when a particular driver
doesn't support a particular operation.
For example an image driver which doesn't

View File

@@ -1,5 +1,5 @@
/*
$Id: _cdio_linux.c,v 1.11 2005/01/19 09:40:50 rocky Exp $
$Id: _cdio_linux.c,v 1.12 2005/01/20 00:36:38 rocky Exp $
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
Copyright (C) 2002, 2003, 2004, 2005 Rocky Bernstein <rocky@panix.com>
@@ -27,7 +27,7 @@
# include "config.h"
#endif
static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.11 2005/01/19 09:40:50 rocky Exp $";
static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.12 2005/01/20 00:36:38 rocky Exp $";
#include <string.h>
@@ -996,7 +996,7 @@ set_speed_linux (void *p_user_data, int i_speed)
{
const _img_private_t *p_env = p_user_data;
if (!p_env) return DRIVER_OP_ERROR;
if (!p_env) return DRIVER_OP_UNINIT;
return ioctl(p_env->gen.fd, CDROM_SELECT_SPEED, i_speed);
}

View File

@@ -1,5 +1,5 @@
/*
$Id: _cdio_sunos.c,v 1.8 2005/01/19 09:40:50 rocky Exp $
$Id: _cdio_sunos.c,v 1.9 2005/01/20 00:36:38 rocky Exp $
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
Copyright (C) 2002, 2003, 2004, 2005 Rocky Bernstein <rocky@panix.com>
@@ -38,7 +38,7 @@
#ifdef HAVE_SOLARIS_CDROM
static const char _rcsid[] = "$Id: _cdio_sunos.c,v 1.8 2005/01/19 09:40:50 rocky Exp $";
static const char _rcsid[] = "$Id: _cdio_sunos.c,v 1.9 2005/01/20 00:36:38 rocky Exp $";
#ifdef HAVE_GLOB_H
#include <glob.h>
@@ -780,7 +780,7 @@ set_speed_solaris (void *p_user_data, int i_speed)
{
const _img_private_t *p_env = p_user_data;
if (!p_env) return DRIVER_OP_ERROR;
if (!p_env) return DRIVER_OP_UNINIT;
return ioctl(p_env->gen.fd, CDROMSDRVSPEED, i_speed);
}

View File

@@ -1,5 +1,5 @@
/*
$Id: cdio.c,v 1.10 2005/01/19 09:23:24 rocky Exp $
$Id: cdio.c,v 1.11 2005/01/20 00:36:38 rocky Exp $
Copyright (C) 2003, 2004, 2005 Rocky Bernstein <rocky@panix.com>
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
@@ -35,7 +35,7 @@
#include <cdio/util.h>
#include "cdio_private.h"
static const char _rcsid[] = "$Id: cdio.c,v 1.10 2005/01/19 09:23:24 rocky Exp $";
static const char _rcsid[] = "$Id: cdio.c,v 1.11 2005/01/20 00:36:38 rocky Exp $";
/*!
@@ -95,7 +95,7 @@ cdio_new (generic_img_private_t *p_env, cdio_funcs_t *p_funcs)
driver_return_code_t
cdio_set_arg (CdIo_t *p_cdio, const char key[], const char value[])
{
if (!p_cdio) return DRIVER_OP_ERROR;
if (!p_cdio) return DRIVER_OP_UNINIT;
if (!p_cdio->op.set_arg) return DRIVER_OP_UNSUPPORTED;
if (!key) return DRIVER_OP_ERROR;

View File

@@ -1,5 +1,5 @@
/*
$Id: device.c,v 1.6 2005/01/19 09:23:24 rocky Exp $
$Id: device.c,v 1.7 2005/01/20 00:36:38 rocky Exp $
Copyright (C) 2005 Rocky Bernstein <rocky@panix.com>
@@ -698,7 +698,7 @@ cdio_open_am_cd (const char *psz_source, const char *psz_access_mode)
driver_return_code_t
cdio_set_blocksize ( const CdIo_t *p_cdio, int i_blocksize )
{
if (!p_cdio) return DRIVER_OP_ERROR;
if (!p_cdio) return DRIVER_OP_UNINIT;
if (p_cdio->op.set_blocksize) return DRIVER_OP_UNSUPPORTED;
return p_cdio->op.set_blocksize(p_cdio->env, i_blocksize);
}
@@ -711,7 +711,7 @@ cdio_set_blocksize ( const CdIo_t *p_cdio, int i_blocksize )
driver_return_code_t
cdio_set_speed (const CdIo_t *p_cdio, int i_speed)
{
if (!p_cdio) return DRIVER_OP_ERROR;
if (!p_cdio) return DRIVER_OP_UNINIT;
if (!p_cdio->op.set_speed) return DRIVER_OP_UNSUPPORTED;
return p_cdio->op.set_speed(p_cdio->env, i_speed);
}

View File

@@ -1,6 +1,6 @@
/* Common SCSI Multimedia Command (MMC) routines.
$Id: scsi_mmc.c,v 1.6 2005/01/19 09:23:24 rocky Exp $
$Id: scsi_mmc.c,v 1.7 2005/01/20 00:36:38 rocky Exp $
Copyright (C) 2004, 2005 Rocky Bernstein <rocky@panix.com>
@@ -178,7 +178,7 @@ scsi_mmc_run_cmd( const CdIo_t *p_cdio, unsigned int i_timeout_ms,
scsi_mmc_direction_t e_direction, unsigned int i_buf,
/*in/out*/ void *p_buf )
{
if (!p_cdio) return DRIVER_OP_ERROR;
if (!p_cdio) return DRIVER_OP_UNINIT;
if (!p_cdio->op.run_scsi_mmc_cmd) return DRIVER_OP_UNSUPPORTED;
return p_cdio->op.run_scsi_mmc_cmd(p_cdio->env, i_timeout_ms,
scsi_mmc_get_cmd_len(p_cdb->field[0]),
@@ -212,7 +212,7 @@ scsi_mmc_get_blocksize_private ( const void *p_env,
uint8_t *p = &mh.block_length_med;
if ( ! p_env ) return DRIVER_OP_ERROR;
if ( ! p_env ) return DRIVER_OP_UNINIT;
if ( ! run_scsi_mmc_cmd ) return DRIVER_OP_UNSUPPORTED;
memset (&mh, 0, sizeof (mh));
@@ -233,7 +233,7 @@ scsi_mmc_get_blocksize_private ( const void *p_env,
int
scsi_mmc_get_blocksize ( const CdIo_t *p_cdio)
{
if ( ! p_cdio ) return DRIVER_OP_ERROR;
if ( ! p_cdio ) return DRIVER_OP_UNINIT;
return
scsi_mmc_get_blocksize_private (p_cdio->env, p_cdio->op.run_scsi_mmc_cmd);
@@ -251,7 +251,7 @@ scsi_mmc_eject_media( const CdIo_t *p_cdio )
uint8_t buf[1];
scsi_mmc_run_cmd_fn_t run_scsi_mmc_cmd;
if ( ! p_cdio ) return DRIVER_OP_ERROR;
if ( ! p_cdio ) return DRIVER_OP_UNINIT;
if ( ! p_cdio->op.run_scsi_mmc_cmd ) return DRIVER_OP_UNSUPPORTED;
run_scsi_mmc_cmd = p_cdio->op.run_scsi_mmc_cmd;
@@ -333,7 +333,7 @@ scsi_mmc_set_blocksize_private ( const void *p_env,
uint8_t block_length_lo;
} mh;
if ( ! p_env ) return DRIVER_OP_ERROR;
if ( ! p_env ) return DRIVER_OP_UNINIT;
if ( ! run_scsi_mmc_cmd ) return DRIVER_OP_UNSUPPORTED;
memset (&mh, 0, sizeof (mh));
@@ -355,7 +355,7 @@ scsi_mmc_set_blocksize_private ( const void *p_env,
driver_return_code_t
scsi_mmc_set_blocksize ( const CdIo_t *p_cdio, unsigned int i_blocksize)
{
if ( ! p_cdio ) return DRIVER_OP_ERROR;
if ( ! p_cdio ) return DRIVER_OP_UNINIT;
return
scsi_mmc_set_blocksize_private (p_cdio->env, p_cdio->op.run_scsi_mmc_cmd,
i_blocksize);