Commit Graph

828 Commits

Author SHA1 Message Date
8de0a3dc6c Made number transition 2008-04-08 13:32:07 +00:00
86d5bdfef8 Got rid of a cumbersome open-close cycle with burn_read_data() on stdio: 2008-03-03 20:30:10 +00:00
5c6366ecbd Mentioned support for DVD+R/DL. 2008-02-28 13:24:08 +00:00
616454c737 Made support for DVD+R DL official, enabled untested support for BD-RE 2008-02-28 12:32:34 +00:00
ea6957ef68 Changed meaning of unrecognized severity texts from FATAL to ALL 2008-02-22 21:38:09 +00:00
f9398c08e6 Imported changes from libiso_msgs.h 2008-02-22 21:36:08 +00:00
b4617c679c New error code 0x00040008 2008-02-22 15:10:21 +00:00
42bb74881a Weakened demand to print file path in following message 2008-02-21 21:53:26 +00:00
61671b41d7 Mapped unknown severity text to ALL rather than NEVER 2008-02-21 20:22:53 +00:00
1e74d7a04e Introduced severity ERRFILE 2008-02-21 20:14:23 +00:00
13492efe4b Testwise inquiry of ioctl(CDROM_MEDIA_CHANGED) (disabled by default) 2008-02-21 20:10:38 +00:00
ff1ad50119 Micro corrections in comment text 2008-02-14 07:41:51 +00:00
4cb6706307 Introduced LIBDAX_MSGS_SEV_MISHAP 2008-02-11 19:15:21 +00:00
6e74c8bc2e Allowed DVD +/- DL for reading 2008-02-08 07:34:58 +00:00
fdbed06f84 Added debug message in case of burn_read_data() return 0 2008-02-07 23:29:26 +00:00
67e4282b82 Installed a simple address logger in burn_read_data 2008-02-06 23:01:45 +00:00
bd8d4bb49f Copied usage discussion about *_header_version_* from libisoburn 2008-02-06 18:23:06 +00:00
623edf9d9d Re-instated range "vreixo" with old and new codes, adjusted severity definitions 2008-02-06 17:41:00 +00:00
d4fe8c75be Registered range "libisoburn" 0x00060000 to 0x00006ffff 2008-02-04 17:52:56 +00:00
a93d18231a New API call burn_sev_to_text() 2008-02-03 09:25:58 +00:00
99767afe1f Registered error code range "libisofs-xorriso" 2008-02-03 09:21:01 +00:00
d498003515 Corrected description of major.minor.micro definition in libburn.h 2008-01-29 21:41:59 +00:00
b1630a3b33 Moving the major.minor.micro definition from configure.ac to libburn.h 2008-01-29 21:09:16 +00:00
69e1d4a51f Disabled debugging messages about thread properties 2008-01-26 18:03:36 +00:00
305917fe86 Made a sudden end to all stdio drives in burn_abort() 2008-01-26 13:16:12 +00:00
b3b42ff649 Ported change in vreixo message range from isoburn_msgs 2008-01-26 12:31:42 +00:00
e449654c7b Introduced message severity "FAILURE" 2008-01-23 19:39:38 +00:00
d66a40bc0e Made burn_read_data() issue messages about hopeless drive access errors 2008-01-23 19:34:38 +00:00
bed900f3f4 Fixed small bug about error messages with burn_read_data 2008-01-19 20:18:13 +00:00
adac21d6ee Changed meaning of .driveno to .origin, introduced LIBDAX_MSGS_ORIGIN_* macros 2008-01-17 18:51:46 +00:00
d9e056c3ac Implemented burn_source.cancel() in a binary backwards compatible way 2007-12-24 14:21:23 +00:00
9f7be91aba Made postponed change in thread management 2007-12-07 18:53:22 +00:00
82c6e92da0 Enabled reading of TOC from ROM drives (direly needed for xorriso) 2007-11-29 18:55:06 +00:00
206910da4e Reacted on build warnings on another system 2007-11-26 15:49:39 +00:00
5c8d6865b5 Marked loss of binary backward compatibility back in rev 655, libburn-0.3.1 2007-11-18 09:34:33 +00:00
fc5f2a4745 Reacted on cdwrite@ message about INT_MAX in cdrom.h of kernel 2.6.23 2007-10-27 07:52:54 +00:00
3199bc21aa Removed useless alternative after zombies turned out to be caused by gdb 2007-10-19 13:32:49 +00:00
2d131a1741 Small change with debug verbosity of abort handler 2007-10-19 13:27:59 +00:00
cd84357589 Starting threads detached, providing two alternatives. But zombies still there. 2007-10-19 11:53:19 +00:00
e98a90cecf Prevented SIGSEGV with burn_msgs_obtain() on non-initialized library 2007-10-18 20:03:50 +00:00
e6885f7fac New API function burn_text_to_sev() 2007-10-16 21:22:29 +00:00
191db530c5 Activated re-usal of disposed global drive_array slots 2007-10-15 14:41:29 +00:00
c3d9155340 Corrected SIGSEGV with changing from one drive to the other 2007-10-15 11:59:34 +00:00
3119ed2af3 Made possible to silence error message about missing pseudo drive 2007-10-15 11:58:08 +00:00
5ad09b55ee Corrected status reply for unstarted fifo (2nd try) 2007-10-07 11:05:00 +00:00
f4fe30ec6c Corrected status reply for unstarted fifo 2007-10-07 11:03:07 +00:00
a63d9b11c4 Fixed data spoiling bug with ring buffer introduced with rev 1155 2007-10-05 23:15:25 +00:00
ee7fcf7522 Revoked urge to have a magic[4] in burn_source (free_data is magic enough) 2007-10-05 08:57:52 +00:00
ed53a67a2b Corrected abort preventing bug introduced with revision 1131 2007-10-04 21:29:49 +00:00
bc1944b970 Minor adjustments with comment text 2007-10-04 21:02:06 +00:00
e5f42759a0 Inserted the necessary error messages and magic numbers 2007-10-04 20:00:58 +00:00
e2479d6088 More documentation for burn_source, new API call burn_fifo_inquire_status() 2007-10-03 22:37:39 +00:00
291ef125b0 Implemented the ring buffer of burn_fifo_source_new() object 2007-10-03 22:35:37 +00:00
771e659a43 More documentation for burn_source 2007-10-03 11:54:42 +00:00
f71c2079ff Ensured synchronize cache before release 2007-10-03 11:24:41 +00:00
01ec5f031d More documentation for burn_source 2007-10-03 08:41:01 +00:00
ce7678b8f4 Corrected error with revision 1145 2007-10-02 17:59:12 +00:00
769ea039a1 Clarified role of burn_source 2007-10-02 13:54:54 +00:00
fc6163732e Moved minimum tracksize padding out of TAO track closing. Now done before sync. 2007-10-02 12:06:11 +00:00
214de7d7df Implemented a simple fifo to decouple from burn_source signals 2007-09-30 21:24:55 +00:00
97403bb20e Added forgotten handling of non-writer-non-control threads 2007-09-29 19:15:49 +00:00
5d93e04b28 Trying to catch signals from within the writer thread 2007-09-29 18:50:19 +00:00
78c16e7590 Made stdio-drives work on readonly CD block devices 2007-09-24 18:14:07 +00:00
5e995c9cd0 Implemented drive role 3, sequential write-only stdio drives (e.g. stdout) 2007-09-24 13:54:52 +00:00
83fe9f3621 Added forgotten handling of "sdtio:" with burn_drive_equals_adr() 2007-09-24 06:24:02 +00:00
9e4996a3b5 Updated a comment about Immed and a debug message with tray loading 2007-09-23 16:35:44 +00:00
78dd75b1ff New API function burn_drive_equals_adr() 2007-09-23 16:33:21 +00:00
606c863a55 Reacted on compiler warning 2007-09-22 19:30:45 +00:00
282e228a6b New API function burn_msgs_submit() 2007-09-22 15:17:41 +00:00
af3c8aaa5d Had to revoke Immed bit on load command. LG GSA-4082B : premature "no media" 2007-09-21 12:04:27 +00:00
c8e9249e9d Changed some comments, reacted on harmless compiler warning 2007-09-18 20:15:25 +00:00
a80f8359fe Made use of Immed bit with 1Bh START STOP UNIT and 35h SYNCHRONIZE CACHE 2007-09-18 20:03:20 +00:00
129db7ee49 Made use of Immed bit with 5Bh CLOSE TRACK/SESSION 2007-09-18 13:03:24 +00:00
698866015e New API function burn_drive_leave_locked() 2007-09-18 09:05:05 +00:00
361a110274 Equipped libdax_msgs with reference counter. Completed its mutex protection. 2007-09-15 20:41:25 +00:00
f379a2c91a New API function burn_set_messenger() 2007-09-15 17:19:45 +00:00
7654785d43 A sed converter which creates libiso_msgs.[ch] from libdax_msgs.[ch] 2007-09-15 17:18:05 +00:00
15b9f786c8 Prepared for neat sed translation. Explained concept of libdax_msgs variants. 2007-09-15 17:16:49 +00:00
635530b05e Imported Range "vreixo" into libburn/libdax_msgs.h 2007-09-15 11:21:27 +00:00
ab15717ce0 Documented burn_write_opts_set_multi @param opts 2007-09-14 12:24:19 +00:00
eb88f800d7 Took into respect time granularity with stdio speed control 2007-09-14 12:23:15 +00:00
02ede28b9e Implemented cache syncing for stdio-drives in burn_random_access_write() 2007-09-12 19:50:57 +00:00
e137f8fd20 Implemented realistic speed simulation with stdio-drives 2007-09-12 11:58:43 +00:00
854a806292 Reacted on compiler -O2 warnings 2007-09-12 11:57:49 +00:00
090861567d Brought burn_stdio_write_track() onto sector_data() for outmost realism 2007-09-12 10:45:34 +00:00
4b4f141fcc Added forgotten return 0 to an error case 2007-09-10 11:00:16 +00:00
c70a78c477 Ended falsely alleged erasability of DVD-RAM and DVD+RW 2007-09-09 18:28:05 +00:00
542afd7b3b Made use of os dependend stdio size estimation 2007-09-09 13:39:00 +00:00
75dd141055 Enable os dependend stdio size estimation 2007-09-09 13:31:29 +00:00
ea09a516bd Called statvfs() for size estimation of regular stdio-files. 2007-09-09 09:35:23 +00:00
bdf862b429 Made Libburn_precheck_write_ruleS unconditional code 2007-09-08 17:47:59 +00:00
2d3d255231 Documentation of stdio-drives 2007-09-08 16:09:52 +00:00
40cb77d953 Allowed -dummy burns with stdio-drives (because /dev/null is no block device) 2007-09-08 13:20:59 +00:00
c8c349469d Fixed memory leak and possible SIGSEGV with pseudo-drives 2007-09-08 10:22:05 +00:00
1f7a6575bc Bug fix about stdio:<charcter device> 2007-09-07 23:47:07 +00:00
386149d5bf Report media profile in cdrskin blank, format, burn runs 2007-09-07 23:41:38 +00:00
c62e63a8d9 Made burn_drive_scan_and_grab() extend the drive list rather than replacing it 2007-09-07 19:09:25 +00:00
b812af96f7 Avoided locked tray after failed burn_finish() because of busy drive 2007-09-07 18:46:36 +00:00
5a8910cdd8 Forgotten file for revision 1006 2007-09-07 16:45:37 +00:00
0bbc34d861 Corrected memory leak introduced by revision 1005 2007-09-07 16:40:38 +00:00
8e171c89a6 Made burn_drive_scan() refuse work on non-empty drive list. 2007-09-07 15:50:31 +00:00
0b13c31b07 Reacted on changed media profile of stdio-drives 2007-09-07 12:38:20 +00:00
e72b2fd732 Corrected write counter in burn_stdio_write_track() 2007-09-07 10:27:38 +00:00
edc50c89ee Promoted burn_drive_raw_get_adr() to API function burn_drive_d_get_adr() 2007-09-06 12:09:10 +00:00
6f2b1c214e Added forgotten read/write counters in burn_stdio_write_track() 2007-09-06 10:00:20 +00:00
43a415a081 Added forgotten handling of pseudo-drives in burn_drive_grab() 2007-09-06 09:44:34 +00:00
277e3cfe29 Fixed a bug with failed opening of pseudo-drive 2007-09-05 19:53:50 +00:00
0c14e6ee4c burn_drive_grab_dummy() becomes invisible part of burn_drive_scan_and_grab() 2007-09-05 19:42:03 +00:00
6841cb68e5 Reacted on compiler warnings 2007-09-04 22:56:50 +00:00
31650eb988 New API calls burn_drive_grab_dummy(), burn_drive_get_drive_role() 2007-09-04 22:50:04 +00:00
797f403b0d New API function burn_write_opts_get_drive() 2007-09-01 18:23:06 +00:00
dcf35bd556 More memory management changes proposed by Joris Dobbelsteen 2007-08-25 16:02:58 +00:00
16a5bbacb4 Corrected memory management flaws found by Joris Dobbelsteen 2007-08-25 08:58:41 +00:00
1adf86532e Allowed to suppress error message from failed burn_read_data() 2007-08-23 15:02:55 +00:00
c6bc4a5e97 Taking synchronous read/write into respect with abort handling 2007-08-22 17:33:53 +00:00
2904a1bee7 Avoiding libburn read-ahead-bug 2007-08-22 16:13:44 +00:00
f567874c98 Corrected dangerous typo with error message production of mmc_read_10() 2007-08-22 13:46:21 +00:00
d2c9236c25 Corrected harmless type declaration flaws 2007-08-17 08:19:30 +00:00
d21697b289 New API function burn_read_data() 2007-08-12 15:25:56 +00:00
ed06b376f2 Checked in burn_random_access_write() wether drive is grabbed 2007-08-12 09:51:04 +00:00
fd3a907d9f Clarifications about burn_random_access_write() 2007-08-12 09:48:31 +00:00
cf0dd395f0 New API function burn_random_access_write() 2007-08-11 20:16:57 +00:00
621a1c24e4 Updated comments about supported profiles and media types 2007-08-10 20:11:33 +00:00
731d17581b Corrected a typo 2007-08-09 13:31:43 +00:00
0b575e044e Changed "unsigned" to "unsigned int" 2007-08-09 13:30:52 +00:00
2c467c8378 Removed ban against speed 0 with burn_drive_set_buffer_waiting() 2007-07-19 07:23:01 +00:00
bdadae6ba5 Implemented minimum speed in burn_drive_set_speed() 2007-07-17 08:57:24 +00:00
8b8afdd59b Only set realistic maximum DVD speeds (for my LG GSA which fails otherwise) 2007-07-14 11:22:01 +00:00
4dd8f098ac New API function burn_drive_get_best_speed() 2007-07-14 11:15:57 +00:00
22d1d56ebd New API-Function burn_drive_set_buffer_waiting() 2007-07-12 17:17:41 +00:00
0217702b8c Preparations to avoid writing which will not fit in drive buffer 2007-07-12 16:29:29 +00:00
d7ca1dd333 Fixed low transaction size introduced by cooperation of revisions 855 and 860 2007-05-28 19:25:09 +00:00
ddc2745495 Added check for .might_simulate to burn_write_opts_auto_write_type() 2007-05-28 17:03:12 +00:00
12c4c73535 Forgotten update of error list with revison 857 2007-05-28 16:59:49 +00:00
3326fcdb2d Extended struct burn_multi_caps by .might_simulate 2007-05-28 16:56:58 +00:00
fba8eaef80 Moved general 32 kiB buffer restriction from write.c to os-linux.h 2007-05-28 13:24:33 +00:00
15a70555b2 Added SCSI opcode to output of revision 857 2007-05-22 16:51:15 +00:00
c86f5d7cde Report eventual sg_io_hdr_t host_status,driver_status as debug messages 2007-05-22 15:45:57 +00:00
cd7b4e6de4 For Linux 2.4, USB audio : Reduced CD output buffer size to 32 kiB 2007-05-21 19:03:06 +00:00
79adcb520b For Linux 2.4, USB : Carefully avoided to inquire more data than available 2007-05-21 18:57:09 +00:00
41f2a40a58 Prepared fflushing and stderr output of SCSI command log 2007-05-21 18:45:44 +00:00
256139c9d6 Polished messages, comments and description of DDLP-A 2007-04-18 13:01:21 +00:00
fd5b681bc6 Updated comments about DVD+R 2007-04-18 10:36:35 +00:00
2a38890c5f Progress due to tests with test/open-cd-excl 2007-04-18 10:35:38 +00:00
9699880581 Corrected description of return values 2007-04-16 21:31:23 +00:00
13b9f910e1 Polished txt and finally threw out getter functions 2007-04-16 21:20:39 +00:00
3b9f66a765 Implemented ddlpa_lock_btl() 2007-04-15 20:34:27 +00:00
5d2ad006a4 Began test implementation of DDLP-A 2007-04-15 16:46:47 +00:00
ab5f39b8bb Switched from O_NONBLOCK to O_NDELAY (see http://lkml.org/lkml/2007/4/11/141) 2007-04-13 17:12:06 +00:00
a78e6f9b29 Avoided SIGSEGV with an old SCSI CD-ROM drive and its wild replies 2007-04-10 14:46:46 +00:00
047f9c75f5 Fixed bug in sg_open_scsi_siblings() introduced with revision 802 2007-04-10 08:31:04 +00:00
159715ebaa Used O_EXCL|O_RDWR and fcntl() even within sg_obtain_scsi_adr() 2007-04-10 08:20:45 +00:00
f617567e03 Fixed bug with drive_scsi_dev_family= introduced by revision 796 (fcntl lock) 2007-04-10 08:17:07 +00:00
76ed9570c9 Reacted on compiler warning about last_rdev, fixed fresh typo bug 2007-04-09 11:10:41 +00:00
4bc8e4caea Cleaned up scsi sibling management, sketched grafting of DDLP 2007-04-09 10:54:17 +00:00
76a9fa4fa2 New cdrskin options --drive_not_f_setlk and --drive_not_o_excl 2007-04-04 18:43:23 +00:00
4c85686aad Added fcntl() locking to O_EXCL locking 2007-04-03 14:58:17 +00:00
16c7cf1889 Added fcntl() locking to O_EXCL locking 2007-04-03 14:04:04 +00:00
15b33422d0 Avoided unconditional finalizing of DVD+R 2007-03-30 21:47:56 +00:00
649f67697a Allowed finalizing of DVD+R 2007-03-30 20:11:36 +00:00
cc5560fc86 Enabled -isosize for first track by help of fifo and without seeking 2007-03-28 10:07:09 +00:00
98f0dab87e Fixed bug with burn_disc_available_space(...,NULL) 2007-03-24 09:31:11 +00:00
dba40c756b Trying to recognize kernel >= 2.6 and use /dev/sr by default 2007-03-15 19:59:54 +00:00
fd9e5dc935 Kept mmc_get_configuration() from believing the announcement of 1 GB reply 2007-03-15 19:55:17 +00:00
64233b0ccc After loading tray wait for unit to become ready or to report some clear error 2007-03-15 19:50:57 +00:00
9e1b3719d6 React properly on drive stating that it cannot write any media 2007-03-15 19:46:26 +00:00
6086b59301 New option drive_scsi_dev_family=sr|scd|sg 2007-03-14 13:37:32 +00:00
71c490d0ae Some adjustments for DVD+R recording 2007-03-07 15:13:25 +00:00
4458bb130a Enabled DVD+R as tested media (-multi is still always on) 2007-03-06 20:51:32 +00:00
99172bdeb4 Enabled DVD+R, DVD+R DL via --allow_untested_media_types, always -multi for now 2007-03-06 19:50:32 +00:00
49e0a6cb1a Fixed bug introduced with rev 736ff which prevented audio CD burning 2007-03-03 15:16:19 +00:00
b6c7fd7478 Re-enabled -force with write modes which seem unavailable 2007-03-03 14:11:52 +00:00
e955d50198 Determine physical interface SCSI,ATA,SATA,USB,... (for future use) 2007-03-03 14:09:46 +00:00
3b5c80e867 Preparations for supporting DVD+R[/DL] 2007-03-01 12:07:29 +00:00
0c4cfdd359 Took into respect deliberate lack of DVD-R/DL multi session capability 2007-02-25 11:26:20 +00:00
f263443858 Forgotten source file for revision 743 2007-02-23 19:33:56 +00:00
2e361e50ed Enabled DVD-R/DL Sequential via burn_allow_untested_profiles() 2007-02-23 19:08:58 +00:00
0ddeb01502 Made burn_disc_available_space() take into respect burn_write_opts_set_start_byte() 2007-02-22 11:30:12 +00:00
64ae333863 Macro for length of rejection reasons string (old size is still safe) 2007-02-22 09:49:18 +00:00
9f2c4b303d Disabled debugging messages about format descriptors 2007-02-22 07:31:32 +00:00
8182be7824 Re-enabled overwriteable pseudo-pseudo-SAO with unpredicted track size 2007-02-22 07:26:41 +00:00
115f03cf63 Moved tao_to_sao_tsize into libburn, let cdrskin use auto_write_type and precheck 2007-02-21 20:53:28 +00:00
b6475c3d84 Re-arranged checking and defaulting of write parameters 2007-02-19 22:51:39 +00:00
4f3dd8614d Adjusted maximum realistic number of tracks to MMC specs 2007-02-18 09:49:26 +00:00
0151358635 Clarified usage comment with burn_drive_info_free() (see ticket 98) 2007-02-18 09:44:44 +00:00
c570e4868d Allowed forceful blanking of blank media in burn_disc_erase() 2007-02-17 08:56:41 +00:00
6ccd359c93 Another bug fix for revision 724 2007-02-17 08:52:07 +00:00
ca69e3f2ca Corrected CD TAO bug introduced with DVD bug fix 724 and CD SAO change 655 2007-02-16 11:21:01 +00:00
d272450a70 Repaired debugging message spoiled by uninitialized variable 2007-02-15 20:35:57 +00:00
a21c2a5138 Clarifications about current state of fillup 2007-02-15 20:23:49 +00:00
73273b1643 Corrected bug about open_ended filluped tracks 2007-02-15 20:19:07 +00:00
4df7aa0f3b Installed a guardian for predicted track end 2007-02-15 20:18:07 +00:00
dbe2ee41ae Took fill_up_media into respect with automatic write mode decisions 2007-02-15 20:16:22 +00:00
e639cd5bbb Optional padding up to full media size when closing (incomplete yet) 2007-02-14 20:32:56 +00:00
3ec93316e0 Forgotten part of revision 718 2007-02-14 12:23:51 +00:00
ff6a9fc92b Handle eventual ridiculously high d->last_track_no 2007-02-14 12:20:32 +00:00
e10bfe2d37 Removed outdated ifdef 2007-02-14 12:03:47 +00:00
4903bb9971 Mew API function burn_disc_available_space() 2007-02-13 14:37:25 +00:00
ba702bc9a8 Set a suitable page 05h after spc_probe_write_modes() 2007-02-13 11:55:09 +00:00
c7804d390f Made profile 0010h DVD-ROM suitable,full,not erasable. So it delivers a TOC. 2007-02-12 14:23:14 +00:00
1aed3f692c Added a comment about DVD-R 2007-02-10 17:23:49 +00:00
05623cffc4 New API function burn_write_opts_auto_write_type() 2007-02-07 16:30:42 +00:00
8dd8ee4b9c Enabled fast blank for DVD-R[W] 2007-02-06 18:57:38 +00:00
d57166f64b Beautification of debugging messages 2007-02-06 17:08:15 +00:00
2799fe1b44 Implemented DVD-R[W] DAO as BURN_WRITE_SAO 2007-02-06 13:06:39 +00:00
330e0e2d5f Preparations for DVD-R[W] DAO 2007-02-05 13:28:57 +00:00
135d9d5016 New in API : struct burn_multi_caps and burn_disc_get_multi_caps() 2007-02-04 07:30:14 +00:00
6b8ab52854 Improved classification and TOC of finalized DVD-R[W] media 2007-02-02 17:32:09 +00:00
4e93de2cd2 Make mmc_read_multi_session_c1 use TOC if available 2007-02-02 15:11:35 +00:00
c02dbe4eca Allowed blanking of DVD-RW which offer no Incremental Streaming 2007-02-01 19:15:06 +00:00
e876f90e6c Obtain TOC from non-CD via 52h READ TRACK INFORMATION 2007-02-01 16:15:09 +00:00
dde52c1971 Provisorily obtain multi-session -C parameters (violates MMC specs but works) 2007-01-31 17:34:49 +00:00
f194aa8d5d Blank sequential DVD-RW, deformat overwriteable DVD-RW 2007-01-31 12:59:51 +00:00
fa792f6a67 First successful multi-session write to a sequential DVD-RW 2007-01-30 19:16:35 +00:00
53a1e99675 Preparations for DVD-R[W] Sequential Recording 2007-01-30 17:54:39 +00:00
bda139f390 Experiments about list of features and profiles 2007-01-29 17:57:31 +00:00
fa350edaae Initialized member set_size of burn_source within burn_null_source_new() 2007-01-26 17:33:29 +00:00
55e6c0ba82 Unified burn_file_source and burn_fd_source 2007-01-26 17:32:31 +00:00
c079e09860 Enforce minimum track length with SAO 2007-01-25 18:52:50 +00:00
99f8e0eec5 Bug fix: DVD tracks of defined size >=2GB suffered 32-bit integer wraparound 2007-01-25 15:00:37 +00:00
Alexander Nedotsukov
3aec7fdeda Restored FreeBSD backend. 2007-01-24 12:44:22 +00:00
8f4dd8580c Banned mixed mode SAO (because broken in libburn and unclear in MMC) 2007-01-22 11:42:17 +00:00
7b024f4a72 Comments learned from studying MMC-3 and MMC-5 for SAO CD cookbook 2007-01-21 19:10:37 +00:00
f418c49e63 Removed forgotten debug message printed to stderr 2007-01-19 11:05:18 +00:00
a34e872511 Kept DVD+RW from stopping BG formatting if it was not started at all 2007-01-18 21:18:03 +00:00
9180a0036d Avoided closing of 0x13-DVD-RW sessions which are not intermediate 2007-01-14 13:41:19 +00:00
f28ec96709 Added missing cache sync in case of aborted DVD-RW burns 2007-01-14 11:55:17 +00:00
07cef29616 Introduced API for inspection and selection of format capacities 2007-01-13 21:18:20 +00:00
a426df57d7 Load array of format capacities into struct burn_drive 2007-01-13 21:16:04 +00:00
ceb5159770 Implemented debugging messages for ATA enumeration 2007-01-13 14:09:53 +00:00
f77dd3134b Enabled writing to DVD-RAM 2007-01-12 16:26:31 +00:00
c381104505 Removed surplus newlines from messages 2007-01-11 13:35:48 +00:00
d61f1279c1 Sketched better handling of self-inflicted SIGs 2007-01-11 13:34:41 +00:00
0f34fb03a0 Kept SIGWINCH from spoiling a burn. 2007-01-11 13:31:28 +00:00
ef6212f4ec With full formatting prefer format 10h over 13h or 15h 2007-01-11 13:29:39 +00:00
8877b36625 Enabled explicit full formatting of DVD+RW ("de-icing") 2007-01-10 21:07:48 +00:00
15af71d448 Switched full formatting from type 10h to 00h which includes lead-out 2007-01-10 15:27:54 +00:00
27262bde51 Option -force enables re-formatting 2007-01-10 15:26:30 +00:00
e6cfff69eb Enhanced DVD-RW formatting 2007-01-09 21:06:55 +00:00
5fc55ec164 Fixed a SIGFPE with formatting via libburner 2007-01-09 14:03:43 +00:00
fdd40d4492 Introduced size parameter to DVD-RW formatting plus writing of zeros. 2007-01-08 10:42:54 +00:00
6a69cfcf07 Added note that buffer may not be smaller than 32768 2007-01-08 10:30:30 +00:00
ab51d551d3 New formatting parameter "size". Sorry for changing API. Function is a week old. 2007-01-06 12:08:57 +00:00
f6b751c4bd Comments and name changes from new findings out of reading MMC-5 2007-01-05 12:58:36 +00:00
f23deebe80 Moved blanking suitability test before eventual spwaning of threads 2007-01-03 16:49:09 +00:00
b362f80d40 Made formatting report progress (as good as the drive does) 2007-01-03 16:42:53 +00:00
97fe858760 Prepared formatting of DVD-RW 2007-01-01 17:10:54 +00:00
c05d6550cb Prepared support for DVD-RW in mode Restricted Overwrite 2006-12-30 00:15:07 +00:00
6e9c399930 Corrected DVD-RW sequential profile name 2006-12-29 14:39:42 +00:00
c4fe384b56 Avoided self contradicting result of ATIP speed inquiry 2006-12-27 13:28:40 +00:00
13ecca61bc Corrected kB conversion factor to 176.4 with ATIP speed codes 2006-12-27 13:03:09 +00:00
6277678a8e Disabled obsolete drive-media-state workaround. (Spinoff of ticket 93 :)) 2006-12-27 13:01:39 +00:00
cafad767a9 Minor corrections to revisions 559 and 560 2006-12-26 18:45:21 +00:00
85ffe77a32 New API calls burn_drive_get_speedlist() , burn_drive_free_speedlist() 2006-12-26 17:07:53 +00:00
95bebfb814 Completed revision 556 2006-12-25 19:07:43 +00:00
979e35d979 Ticket 93: write speeds from ACh GET PERFORMANCE, Type 03h, DVD media capacity 2006-12-25 19:00:26 +00:00
a4846ef882 Ticket 93: write speeds from mode page 2Ah descriptors 2006-12-25 11:34:43 +00:00
42c0cc6dd4 Bugfix after changes for DVD+RW: start_byte was initialized 0, but must be -1 2006-12-24 18:23:30 +00:00
221aee23d1 Bugfix with DVD+RW : progress indicators were initialized too late 2006-12-24 18:22:27 +00:00
a7610aa0c9 Made DVD 32k end padding controllable 2006-12-24 14:24:35 +00:00
fb4a209a34 Fixed a bug with speed measurement at end of DVD+RW burning 2006-12-24 14:22:38 +00:00
7e30dbfc5a More appropriate drive status during format and close of DVD+RW 2006-12-23 18:43:31 +00:00
1ce6ec4a3a New API function to inquire burn success (and avoid confusing messages) 2006-12-23 14:12:55 +00:00
c09d8e6da6 Adjustable write position for DVD+RW: burn_write_opts_set_start_byte() 2006-12-23 10:20:35 +00:00
9a752c6130 Disallowed multi flag with DVD+RW (nurses wrong hopes for now) 2006-12-21 20:57:15 +00:00
ce27ad5159 DVD speed setting via B6h SET STREAMING, DVD+RW now enabled in vanilla build 2006-12-21 20:06:04 +00:00
ff755e7204 Removed some debugging messages 2006-12-21 12:23:10 +00:00
dae337de09 Corrected bug reported by gcc -O2 2006-12-20 17:40:38 +00:00
adaf3f20d7 Corrected bug reported by gcc -O2 2006-12-20 17:13:05 +00:00
de33492cde Corrected DVD+RW track number and nwa with 52h READ TRACK INFORMATION 2006-12-20 17:05:33 +00:00
1b1ef5a31d Avoid undefined 43h commands (TOC/ATIP) with non-CD 2006-12-20 14:52:48 +00:00
b02b2a40e7 Refuse to burn audio tracks to DVD 2006-12-20 14:23:36 +00:00
94848398c0 Prepared experiments for writing to DVD (most easy: DVD+RW) 2006-12-20 11:20:08 +00:00
c1f49bab3b Noted some insight about necessity of OPC gained from growisofs_mmc.cpp 2006-12-18 12:33:51 +00:00
fcf9c50220 Appeased doxygen warnings 2006-12-11 21:51:00 +00:00
17bac86aae Trying to identfy CD device via ioctl(CDROM_DRIVE_STATUS) 2006-12-11 19:19:15 +00:00
d9e502ee5f Reacted better on failing ioctl(SG_GET_SCSI_ID) 2006-12-11 16:20:54 +00:00
17fc8e7161 Removed ban on linux_sg_device_family, warning now of linux_sg_accept_any_type 2006-12-11 14:54:26 +00:00
e405092ab0 Enabled correct SCSI address parameter registration for /dev/srM 2006-12-11 13:45:50 +00:00
c6d22a1eb0 Prevented SIGSEGVs when using -atip with my SCSI CD-ROM (sr,sg: no matter) 2006-12-11 12:53:12 +00:00
8265834404 Silenced a compiler warning. Worked further on /dev/srM test. Not done yet. 2006-12-11 11:58:52 +00:00
77f44ce5a2 Prepared experiments for new Linux SCSI adventures 2006-12-11 10:01:18 +00:00
e29f13980b Avoided unsuitable media complaint on burn_drive_grab() with load==0 2006-12-02 20:13:31 +00:00
91ff41856b Correction for drives which return empty tray as profile 0x00 rather than error 2006-12-02 13:06:05 +00:00
229328e869 New API function to obtain media type: burn_disc_get_profile() 2006-12-02 11:17:12 +00:00
ad2c080145 Ticket 21: media type via 46h GET CONFIGURATION , Current Profile 2006-12-01 21:38:34 +00:00
9270f41c65 Prevented premature BURN_DRIVE_IDLE introduced with revision 443 2006-11-25 18:30:06 +00:00
3d5cb04093 Trying to keep signal handler from repeating messages 2006-11-25 17:06:17 +00:00
56ab215db0 Ticket 91: update media state model after content change 2006-11-25 15:26:35 +00:00
26fa325ee4 Coordinated scsi_notify_error() and scsi_error() 2006-11-22 12:25:16 +00:00
26412b4793 Removed a redundant d->start_unit() of revision 419 2006-11-20 09:07:47 +00:00
9ea689d7e4 Silenced compiler warnings 2006-11-20 09:06:30 +00:00
4daed7c4a9 Implemented libburn builtin fine granulated drive buffer min-fill recording 2006-11-19 11:47:34 +00:00
ebb94ee212 Test wether SCSI 1Bh START UNIT would be helpful with ticket 90 2006-11-18 19:49:18 +00:00
373e401671 Polished porting hints 2006-11-16 14:21:27 +00:00
06d008d6c6 Polished porting hints and self-compliance to newly established specs 2006-11-16 13:40:21 +00:00
ff284b3f51 Made consolidaed operating system adapters for ease of porting 2006-11-16 11:17:55 +00:00
628e935fe5 Narrowed system specific part of enumerate_common() 2006-11-15 20:49:27 +00:00
13641fcbae Made portability clarifications 2006-11-15 17:10:12 +00:00
17d1d2e8a6 Enhanced optional SCSI command logging 2006-11-15 09:11:57 +00:00
c1b3d3341e Prepared tests for eventual drive which might support SAO to appendable CD 2006-11-15 09:05:06 +00:00
725b6515ff Fixed a wrong name in API description 2006-11-14 16:38:01 +00:00
5a0b597e3f Reacted on error condition during write operation 2006-11-12 15:28:09 +00:00
1bfd7b5a5f Made speed 0 in burn_drive_set_speed() really maximum speed (i.e. FFFFh) 2006-11-12 08:56:46 +00:00
6c22b98235 New API function burn_disc_track_lba_nwa() 2006-11-11 12:22:53 +00:00
c9478cc15e Experimentally enabled burning to BURN_DISC_APPENDABLE (tested with TAO only) 2006-11-09 19:29:39 +00:00
5057fe48ab Silenced SCSI error (debugging) messages about missing media 2006-11-09 11:36:38 +00:00
dad50348db Made track write counter of SAO count rather too much than too few bytes 2006-11-08 17:28:56 +00:00
e54be83b27 Cared for some SCSI error conditions which were ignored up to now 2006-11-06 19:58:24 +00:00
448aac8880 Made CD with unclosed track blankable (by -force) 2006-11-06 15:52:45 +00:00
d7c34f05e4 New API burn_write_opts_set_multi(). (But libburn cannot burn next session yet) 2006-11-06 11:42:21 +00:00
25d5a2afe4 Enabled audio tracks with TAO 2006-11-04 09:27:50 +00:00
66515523c1 Enabled TAO for multiple -data tracks (-audio still ends after 0 bytes) 2006-11-03 20:22:54 +00:00
684cfd0cd2 Installed decent abort behavior with TAO 2006-11-03 15:10:24 +00:00
c98dd9b0a7 Installed status communications about closing session ("Fixating") 2006-11-02 21:17:32 +00:00
d337722920 dapted cdrskin pacifier to possibly unknown track size 2006-11-01 16:39:07 +00:00
5af92d13fe Made single track TAO work without fixed size (compile -experimental) 2006-10-31 18:48:18 +00:00
114307a679 Made single track TAO work (sector i/o still wants fixed size, though) 2006-10-31 11:55:51 +00:00
99ca953b1d Made MMC command CLOSE TRACK/SESSION available to struct burn_drive 2006-10-30 11:18:36 +00:00
04a0b7e8fc Closed some loopholes for byte swapping 2006-10-24 16:53:53 +00:00
f95d7aa6aa Enabled byte swapping for audio track sources, added anti option -swab 2006-10-24 10:20:35 +00:00
0d26beb2ed Introduced extraction of .au (but not its usage within cdrskin) 2006-10-24 07:50:31 +00:00
c51a93fd9a Updated tangling of FreeBSD code with mmc.c :( 2006-10-23 12:41:29 +00:00
404067bfda Made available drive buffer fill during write 2006-10-23 11:31:37 +00:00
a4d7710063 Made clarification in remark about atip speed conversion 2006-10-23 07:42:46 +00:00
8f232d1133 Implemented cdrskin -toc 2006-10-22 13:03:28 +00:00
e5ed5f1856 Split enumerate_common() into logic-layer, command-layer, transport-layer 2006-10-21 18:51:35 +00:00
6971f3f96d Clarified relation of burn_disc_read_atip() and burn_drive_get_start_end_lba() 2006-10-21 10:37:58 +00:00
b6a04cb493 Implemented some ATIP functionality 2006-10-21 10:34:15 +00:00
4718ad99f9 Classified media with TOC read error as unsuitable (rather than as blank) 2006-10-20 15:16:29 +00:00
8610c9bd1d Made cdrskin produce "ATIP start of lead" (on non-blank media for now) 2006-10-20 11:34:52 +00:00
Alexander Nedotsukov
84ecb57b47 Unused siblings locking bits excluded from FreeBSD build. 2006-10-20 06:56:02 +00:00
Alexander Nedotsukov
1f11d1c462 Replaced malloc/memset pairs with single calloc() call. 2006-10-19 08:31:33 +00:00
362bcc9cc0 Implemented some cdrecord pickiness for .wav extraction 2006-10-17 16:52:58 +00:00
1e80ad2187 Roughly implemented automatic .wav extraction in cdrskin 2006-10-17 14:13:30 +00:00
Alexander Nedotsukov
f8fd6a21f4 - Added logging to libdax_msgs similar to Linux backend.
- Added mmc_function_spy() traces.
2006-10-17 03:09:29 +00:00
e326e9aac9 Hopefully fixed problem with stdin as audio source 2006-10-15 21:04:00 +00:00
fdfc4ebf36 Hopefully fixed memory problem which causes sigabrt on free 2006-10-15 19:26:22 +00:00
9d3f1292d6 Implemented a first attempt of a .wav decapitator (ticket 38) 2006-10-15 13:51:41 +00:00
Alexander Nedotsukov
e28798d8a0 Move Linux specific includes to the place where they actually required. 2006-10-15 13:07:43 +00:00
0710bbb4fb Introduced burn_drive_enumerator_t to allow more complete sg-freebsd implementation 2006-10-14 12:24:03 +00:00
6ad8e2e251 Removed bug in burn_disc_write_sync(): BURN_DRIVE_IDLE, then d->sync_cache() 2006-10-13 11:46:07 +00:00
170eb96356 Made libburn and cdrskin build on my Linux again 2006-10-13 10:22:21 +00:00
Mario Danic
1d570af0b5 Implemented freebsd transport layer 2006-10-12 17:38:32 +00:00
Mario Danic
5fd59b1858 Prepared sg files for multi-os support 2006-10-12 17:36:38 +00:00
Mario Danic
86bfcea2b3 Made several changes for freebsd support 2006-10-12 17:35:06 +00:00
Mario Danic
ac6eed7aef Modified structure.c 2006-10-12 17:31:58 +00:00
be991c61d7 Got rid of assert() in libburn 2006-10-10 18:19:28 +00:00
6c3f912561 Got rid of assert() in sg.c by soft means 2006-10-10 17:55:34 +00:00
96af620334 Got rid of assert() in sector.c by soft means 2006-10-10 11:26:46 +00:00
bd1577debd Got rid of assert() in mmc.c by soft means 2006-10-09 12:49:08 +00:00
cf8aacb27d Got rid of assert() in write.c by soft means 2006-10-09 08:43:15 +00:00
5d0b8265b2 Got rid of assert() in util.c by soft means 2006-10-08 10:30:57 +00:00
f5603c7519 Got rid of assert() in to.c by soft means 2006-10-08 10:24:50 +00:00
2403532242 Got rid of assert() in structure.c by soft means 2006-10-08 10:04:09 +00:00
988622c3b6 Got rid of assert() in spc.c by soft means 2006-10-07 17:51:07 +00:00
c6bd87af59 Got rid of some assert() in sg.c by soft means 2006-10-07 17:05:45 +00:00
b202e3be5b Got rid of assert() in read.c by soft means 2006-10-07 14:58:59 +00:00
d252d1fc9b Got rid of assert() in options.c by soft means 2006-10-07 14:19:32 +00:00
a8921e4f59 Got rid of assert() in init.c by soft means 2006-10-07 13:24:12 +00:00
ff0be0eeae Got rid of assert() in drive.c by soft means 2006-10-07 12:29:22 +00:00
91f2a231f3 Got rid by soft means of assert() in async.c 2006-10-07 06:23:31 +00:00
16d3089ba8 Listed findings on assert() within libburn 2006-10-06 14:26:26 +00:00
b6831605b2 Made use of SCSI_IOCTL_GET_BUS_NUMBER in hope of cdrecord compatibility 2006-10-05 14:21:34 +00:00
1fe7f68b43 Uploaded forgotten part of revision 245 2006-10-05 06:54:33 +00:00
3b16ef699f Implemented new API function burn_set_signal_handling(), libburner uses it 2006-10-03 16:37:08 +00:00
b3bea43074 Implemented burn_abort() and made use of it 2006-10-02 10:35:51 +00:00
5aa2729766 Enhanced Cdrpreskin__cdrecord_to_dev so it warns of invisible SCSI drive 2006-10-01 10:43:02 +00:00
6dbcf6a8f4 Made official exclusive==2 with burn_preset_device_open() 2006-09-28 07:51:38 +00:00
5c45c2aa1b Removed obsolete code and comments 2006-09-27 14:40:21 +00:00
c70fc7215d Curbed endless links to 20 hops 2006-09-27 14:22:32 +00:00
b81aa81c61 Kept /dev/hdX from all having SCSI address 0,0,0 2006-09-27 13:41:19 +00:00
29d630b141 Disabled but did not discarded failed attempt to lock against growisofs 2006-09-27 12:04:53 +00:00
886b8d1f81 Disabled but did not discarded failed attempt to lock against growisofs 2006-09-27 11:57:28 +00:00
c430359a99 Fixed bug in enhanced softlink resolution 2006-09-26 21:05:11 +00:00
e66581f3b3 Enhanced softlink resolution 2006-09-26 20:52:32 +00:00
Lorenzo Taylor
2d2495db29 Disabled internal link traversal of libburn. 2006-09-26 20:37:41 +00:00
0ee5e11a8f Removed libburn/message.[ch] 2006-09-26 14:53:06 +00:00
81f56e8bbd Made changes with usage of queued messages 2006-09-26 14:26:35 +00:00
facd49dc4e Made first use of queued messages and fixed several bugs with that 2006-09-26 11:44:07 +00:00
bbcf7c269c Achieved minimum strerror thread safety (strerror_r is burned by Unix and GNU) 2006-09-25 14:43:41 +00:00
12ad9100ff Implemented sg_close_drive_fd (ticket 74) 2006-09-25 14:09:14 +00:00
a27361b3b0 Converted "libburn_experimental:" messages of address conversion into "DEBUG" 2006-09-25 10:44:55 +00:00
f2c87eae59 Removed inclusion of libburn/message.h 2006-09-25 09:49:38 +00:00
15b3f2627c Obsoleted libburn/message.[ch] 2006-09-24 20:25:54 +00:00
1a69a09766 Recorded error_code 0x00020001 2006-09-24 19:02:51 +00:00
5038e2afb0 Made use of new message handling facility and removed first bugs 2006-09-24 18:07:10 +00:00
bcaf610800 Added an error message handling facility (ticket 74) 2006-09-24 17:16:01 +00:00
81ceaf0cdd Removed a bug with SCSI address of scanned drives without such address 2006-09-23 13:26:42 +00:00
e388a6396f Enabled unused SCSI part of struct burn_drive. Switched persistent address to burn_drive.devname 2006-09-23 11:40:24 +00:00
8e73ee88e9 Enabled unused SCSI part of struct burn_drive. Switched persistent address to burn_drive.devname 2006-09-23 11:36:39 +00:00
faaefaa4b8 Introduced new API function burn_drive_obtain_scsi_adr() 2006-09-23 08:51:27 +00:00
8c0b17b382 Changed outdated comments 2006-09-23 08:29:19 +00:00
b3c2e76975 Made burn_drive_convert_scsi_adr() a new API function 2006-09-23 08:16:22 +00:00
3f7289d104 Restructured SCSI search, removed a potential bug with hdX 2006-09-23 07:58:43 +00:00
b67c555b30 Implemented finding matching /dev/sgN from /dev/srM or /dev/scdK 2006-09-22 19:29:11 +00:00
f580ef6637 Implemented new API function burn_drive_convert_fs_adr() 2006-09-22 17:01:26 +00:00
7937cb5d9b Implemented resolving of softlinks (ticket 33) 2006-09-22 13:30:32 +00:00
Lorenzo Taylor
83b175c172 Fixed premature return from burn_disc_erase on some drives. It now returns only when the drive is finished blanking. 2006-09-17 04:44:16 +00:00
fa0ab21469 Made doxygen happy with parameter of burn_drive_get_adr 2006-09-16 05:38:21 +00:00
2ef83d54f7 Officialized burn_drive_info_forget() 2006-09-11 17:49:42 +00:00
917db3a11a Removed a bug introduced with revison 93 2006-09-11 16:31:37 +00:00
59f0c4caa3 Slowed down highspeed loops waiting for drive status changes 2006-09-10 10:09:17 +00:00
244724d205 Hunted down the bug which let newapi-cdrskin fail with drive 1 2006-09-09 17:22:05 +00:00
eed4a0a89e Hopefully ensured correct burn_disc_is_erasable() already after first grab 2006-09-08 20:17:18 +00:00
fcaba35881 Implemented first use of API-experimental burn_drive_info_forget() in cdrskin signal handler 2006-09-07 11:55:00 +00:00
4ecc0a8777 Added new parameter "force" to API-experimental burn_drive_info_forget() 2006-09-06 09:16:02 +00:00
bbdb40ff0f Integrated elmom patch proposal #3 from ticket #62 2006-09-04 19:11:04 +00:00
d163ba3119 Implemented track number patch by bonfire-app@wanadoo.fr, tickets 58 and 9 2006-09-01 10:52:01 +00:00
e47c8308eb Outcommented "experimental:" messages of O_EXCL development 2006-08-31 09:26:44 +00:00
a660d0050c Wrote into API the imperative not to use drive.location but burn_drive_get_adr 2006-08-28 21:28:24 +00:00
Mario Danic
08b877cfc9 Made burn_drive_release() always unlock drive 2006-08-28 21:10:08 +00:00
Mario Danic
07cf385519 Fixed eject in burn_drive_release() 2006-08-28 20:43:34 +00:00
6ff1a35c65 Changed some 'release' to 'close' with specs of burn_drive_scan_and_grab 2006-08-27 22:23:03 +00:00
Mario Danic
c155e08301 Extended API docs to document fact that audio data must be in little-endian byte order 2006-08-27 20:55:14 +00:00
dc74390bd5 Inserted prints to see how sg_issue_command() is called (printing is disabled now) 2006-08-27 15:16:33 +00:00
5ec170721e Allowed to blank appendable files and installed first back_hacks.h variable ever 2006-08-26 13:49:53 +00:00
9063945d28 Adjusted statement at API documention of burn_initialize() 2006-08-25 17:35:24 +00:00
f9c21e4057 burn_drive_free() now closes all open drive file descriptors 2006-08-25 17:02:27 +00:00
Mario Danic
525322ddf1 API docs addition for burn_audio 2006-08-24 22:33:49 +00:00
fff851b263 Hopefully fixed an unintended line break in API doxygen 2006-08-24 21:21:25 +00:00
Mario Danic
fa4e4143f7 Fixed Makefile.am files 2006-08-24 18:41:01 +00:00
d6df47920e Introduced API functions burn_drive_scan_and_grab() burn_drive_get_adr() 2006-08-24 13:30:21 +00:00
d6ab7897f5 Introduced new internal function burn_drive_is_open 2006-08-22 17:42:44 +00:00
265fae24b4 Hopefully fixed a file descriptor resource leak in sg_grab() 2006-08-20 19:03:21 +00:00
831c487911 Silenced two compiler warnings 2006-08-20 18:21:29 +00:00
Mario Danic
12ebc4002d Implemented persistent drive adresses, method to leave all drives but one untouched 2006-08-15 20:40:30 +00:00
Mario Danic
2f2c115e08 Initial import 2006-08-15 20:37:04 +00:00