|
Lines 15-21
Link Here
|
| 15 |
#include <string.h> |
15 |
#include <string.h> |
| 16 |
#include <errno.h> |
16 |
#include <errno.h> |
| 17 |
|
17 |
|
| 18 |
#include <mirage.h> |
18 |
#if HAVE_LIBMIRAGE3 |
|
|
19 |
# include <mirage/mirage.h> |
| 20 |
#else |
| 21 |
# include <mirage.h> |
| 22 |
#endif |
| 19 |
#include "mirage-password.h" |
23 |
#include "mirage-password.h" |
| 20 |
#include "mirage-wrapper.h" |
24 |
#include "mirage-wrapper.h" |
| 21 |
|
25 |
|
|
Lines 39-45
gchar* miragewrap_password_callback(gpointer user_data) {
Link Here
|
| 39 |
gboolean miragewrap_init(void) { |
43 |
gboolean miragewrap_init(void) { |
| 40 |
GError *err = NULL; |
44 |
GError *err = NULL; |
| 41 |
|
45 |
|
|
|
46 |
#if !GLIB_CHECK_VERSION(2, 36, 0) |
| 42 |
g_type_init(); |
47 |
g_type_init(); |
|
|
48 |
#endif |
| 43 |
|
49 |
|
| 44 |
#if !defined(MIRAGE_API12) || defined(MIRAGE_API20) |
50 |
#if !defined(MIRAGE_API12) || defined(MIRAGE_API20) |
| 45 |
if (!((mirage = g_object_new(MIRAGE_TYPE_CONTEXT, NULL)))) |
51 |
if (!((mirage = g_object_new(MIRAGE_TYPE_CONTEXT, NULL)))) |
|
Lines 137-177
static MirageTrack *miragewrap_get_track_common(const gint track_num, gint *ssta
Link Here
|
| 137 |
*len = mirage_track_layout_get_length(track); |
143 |
*len = mirage_track_layout_get_length(track); |
| 138 |
|
144 |
|
| 139 |
if (sectsize) { |
145 |
if (sectsize) { |
| 140 |
gint mode; |
146 |
gint sector_type; |
| 141 |
const gchar *unsupp_desc; |
147 |
const gchar *unsupp_desc; |
| 142 |
|
148 |
|
| 143 |
mode = mirage_track_get_mode(track); |
149 |
#if MIRAGE_VERSION_MAJOR >= 3 |
|
|
150 |
sector_type = mirage_track_get_sector_type(track); |
| 151 |
#else |
| 152 |
sector_type = mirage_track_get_mode(track); |
| 153 |
#endif |
| 144 |
|
154 |
|
| 145 |
unsupp_desc = NULL; |
155 |
unsupp_desc = NULL; |
| 146 |
switch (mode) { |
156 |
switch (sector_type) { |
| 147 |
/* supported modes, we set *sectsize and leave unsupp_desc NULL */ |
157 |
/* supported sector types, we set *sectsize and leave unsupp_desc NULL */ |
|
|
158 |
#if MIRAGE_VERSION_MAJOR >= 3 |
| 159 |
case MIRAGE_SECTOR_MODE1: |
| 160 |
case MIRAGE_SECTOR_MODE2_FORM1: |
| 161 |
#else |
| 148 |
case MIRAGE_MODE_MODE1: |
162 |
case MIRAGE_MODE_MODE1: |
| 149 |
case MIRAGE_MODE_MODE2_FORM1: |
163 |
case MIRAGE_MODE_MODE2_FORM1: |
|
|
164 |
#endif |
| 150 |
*sectsize = 2048; |
165 |
*sectsize = 2048; |
| 151 |
break; |
166 |
break; |
| 152 |
/* unsupported modes, we leave *sectsize unmodified and set unsupp_desc */ |
167 |
/* unsupported sector types, we leave *sectsize unmodified and set unsupp_desc */ |
|
|
168 |
#if MIRAGE_VERSION_MAJOR >= 3 |
| 169 |
case MIRAGE_SECTOR_MODE0: |
| 170 |
#else |
| 153 |
case MIRAGE_MODE_MODE0: |
171 |
case MIRAGE_MODE_MODE0: |
|
|
172 |
#endif |
| 154 |
unsupp_desc = "a Mode 0"; |
173 |
unsupp_desc = "a Mode 0"; |
| 155 |
break; |
174 |
break; |
|
|
175 |
#if MIRAGE_VERSION_MAJOR >= 3 |
| 176 |
case MIRAGE_SECTOR_AUDIO: |
| 177 |
#else |
| 156 |
case MIRAGE_MODE_AUDIO: |
178 |
case MIRAGE_MODE_AUDIO: |
|
|
179 |
#endif |
| 157 |
unsupp_desc = "an audio"; |
180 |
unsupp_desc = "an audio"; |
| 158 |
break; |
181 |
break; |
|
|
182 |
#if MIRAGE_VERSION_MAJOR >= 3 |
| 183 |
case MIRAGE_SECTOR_MODE2: |
| 184 |
#else |
| 159 |
case MIRAGE_MODE_MODE2: |
185 |
case MIRAGE_MODE_MODE2: |
|
|
186 |
#endif |
| 160 |
unsupp_desc = "a Mode 2"; |
187 |
unsupp_desc = "a Mode 2"; |
| 161 |
break; |
188 |
break; |
|
|
189 |
#if MIRAGE_VERSION_MAJOR >= 3 |
| 190 |
case MIRAGE_SECTOR_MODE2_FORM2: |
| 191 |
#else |
| 162 |
case MIRAGE_MODE_MODE2_FORM2: |
192 |
case MIRAGE_MODE_MODE2_FORM2: |
|
|
193 |
#endif |
| 163 |
unsupp_desc = "a Mode 2 Form 2"; |
194 |
unsupp_desc = "a Mode 2 Form 2"; |
| 164 |
break; |
195 |
break; |
|
|
196 |
#if MIRAGE_VERSION_MAJOR >= 3 |
| 197 |
case MIRAGE_SECTOR_MODE2_MIXED: |
| 198 |
#else |
| 165 |
case MIRAGE_MODE_MODE2_MIXED: |
199 |
case MIRAGE_MODE_MODE2_MIXED: |
|
|
200 |
#endif |
| 166 |
unsupp_desc = "a mixed Mode 2"; |
201 |
unsupp_desc = "a mixed Mode 2"; |
| 167 |
break; |
202 |
break; |
| 168 |
/* unknown mode, report it even if non-verbose and leave now */ |
203 |
#if MIRAGE_VERSION_MAJOR >= 3 |
|
|
204 |
case MIRAGE_SECTOR_RAW: |
| 205 |
unsupp_desc = "a raw"; |
| 206 |
break; |
| 207 |
case MIRAGE_SECTOR_RAW_SCRAMBLED: |
| 208 |
unsupp_desc = "a scrambled raw"; |
| 209 |
break; |
| 210 |
#endif |
| 211 |
/* unknown sector type, report it even if non-verbose and leave now */ |
| 169 |
default: |
212 |
default: |
| 170 |
g_printerr("Unknown track mode (%d) for track %d (newer libmirage?)\n", mode, track_num); |
213 |
g_printerr("Unknown track sector type / mode (%d) for track %d (newer libmirage?)\n", sector_type, track_num); |
| 171 |
return NULL; |
214 |
return NULL; |
| 172 |
} |
215 |
} |
| 173 |
|
216 |
|
| 174 |
if (unsupp_desc) { /* got unsupported mode */ |
217 |
if (unsupp_desc) { /* got unsupported sector type */ |
| 175 |
if (verbose) |
218 |
if (verbose) |
| 176 |
g_printerr("Track %d is %s track (unsupported)\n", track_num, unsupp_desc); |
219 |
g_printerr("Track %d is %s track (unsupported)\n", track_num, unsupp_desc); |
| 177 |
return NULL; |
220 |
return NULL; |
| 178 |
- |
|
|