From glaubitz@physik.fu-berlin.de Wed Mar 09 15:06:41 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxK2A-00085b-Qn>; Wed, 09 Mar 2011 15:06:38 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1PxK2A-0003m0-GB>; Wed, 09 Mar 2011 15:06:38 +0100 Received: from 1x-193-157-195-36.uio.no ([193.157.195.36]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1PxK2A-0001bo-9g>; Wed, 09 Mar 2011 15:06:38 +0100 From: Adrian Glaubitz Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Date: Wed, 9 Mar 2011 15:06:37 +0100 To: linux-minidisc mailing list Message-Id: Mime-Version: 1.0 (Apple Message framework v1082) X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.195.36 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299679598-00005A17-0BF3E8D1/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.024176, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Algerien.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Subject: [linux-minidisc] Google Summer of Code 2011 - Students wanted X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Mar 2011 14:06:41 -0000 Dear linux-minidisc mailing list followers, as you've might read on your favorite news website for IT news, Google = is organizing another Google Summer of Code this year. For all of you who don't know = what GSoC is, you might be interested to read the respective article on = Wikipedia [1]. The linux-minidisc project is applying for a sponsorship for this years' = GSoC like we did last year, however, we have little hope that we will be chosen as = a participating project since we didn't have any luck last year. The reason is probably = the lack of popularity of MiniDisc among Linux and open source software users. However, there is still a way this years' GSoC can make a contribution = to the MiniDisc support on Linux. It's actually about VLC, the free and open source = media player developed by the VideoLAN project [2]. VLC, through ffmpeg, currently = supports playback of ATRAC-SP and ATRAC3 audio, ATRAC3+ is currently = work-in-progress. The current problem with playback of ATRAC audio files in VLC is the = fact, that ATRAC audio files (*.oma) can be encrypted. A well-known problem among the = users of the infamous original Sony software SonicStage [3]. SonicStage stores = all your audio content as encrypted *.oma files on your hard disk. These = encrypted audio files can only be played back in SonicStage and only if a set of keys = which SonicStage stores in it's program folder are present. These keys can very easily = get lost and once they are, one usually has no means of playing back the encrypted *.oma = files. The real irony about this encryption is that it is even used for your own = recordings made with a MiniDisc Walkman and transferred to the computer using = SonicStage. So one has to be very careful not to lose these keys. Unfortunately that = happens very often to users of SonicStage, especially when they had to reinstall = their Windows or bought a new computer and backed up the *.oma files only = (most people don't actually know about the keys). So, after a hard disk crash = or reinstallation of Windows, the *.oma files are usually lost, since they = cannot be decrypted anymore. Luckily, we have recently discovered a way to decrypt all *.oma audio = files with a generic key. We have a proof of concept using some commands in the Linux command shell (bash) which will eventually decrypt an encrypted *.oma file. We = have shown this technique to the guys at VideoLAN and they happen to be interested = in getting this code into VLC so that VLC will always be able to decrypt = and playback any *.oma audio file, independent of the fact whether the keys from = SonicStage were backed up and are available or not. For this reason, the VideoLAN project is now looking for an endowed = student programmer who'd be willing to implement that decryption algorithm with the help of = a mentor for VLC. In order to qualify as a student for Google Summer of Code, you have to be enrolled as a regular student at a university, otherwise = Google will not pay you and the mentor for the project. Of course, you should have = sufficient skills in C/C++ programming and also have some experience in writing = code for larger projects, especially free and open source software. The reward upon completing the task for VideoLAN, thus creating a = working decryptor for VLC, will be rewarded by Google with US$ 5000. If interested, drop me an email directly and I will get you into contact = with the VideoLAN developers so we can discuss the details. Regards, Adrian [1] http://en.wikipedia.org/wiki/GSoC [2] http://www.videolan.org/ [3] http://en.wikipedia.org/wiki/SonicStage= From glaubitz@physik.fu-berlin.de Thu Mar 10 17:02:10 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxiJU-0000u7-56>; Thu, 10 Mar 2011 17:02:08 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1PxiJU-0004mT-2s>; Thu, 10 Mar 2011 17:02:08 +0100 Received: from 1x-193-157-193-223.uio.no ([193.157.193.223]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1PxiJT-00021H-VK>; Thu, 10 Mar 2011 17:02:08 +0100 Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=us-ascii From: Adrian Glaubitz In-Reply-To: Date: Thu, 10 Mar 2011 17:02:06 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: <51AEA29F-DF34-4EFA-985F-B3797F2E5E80@physik.fu-berlin.de> References: To: Adrian Glaubitz X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.193.223 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299772928-00005A17-AF0E3F1C/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000013, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Dschibuti.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Cc: linux-minidisc mailing list Subject: Re: [linux-minidisc] Google Summer of Code 2011 - Students wanted X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Mar 2011 16:02:10 -0000 On Mar 9, 2011, at 3:06 PM, Adrian Glaubitz wrote: > Dear linux-minidisc mailing list followers, >=20 > as you've might read on your favorite news website for IT news, Google = is organizing > another Google Summer of Code this year. For all of you who don't know = what > GSoC is, you might be interested to read the respective article on = Wikipedia [1]. >=20 > [1] http://en.wikipedia.org/wiki/GSoC > [2] http://www.videolan.org/ > [3] http://en.wikipedia.org/wiki/SonicStage The VideoLAN developers have created an entry in their wiki regarding = this task, please see the link in [1]. It's certainly going to be updated shortly. Adrian [1] http://wiki.videolan.org/SoC_2011#OMA.2FAtrac_improvements From glaubitz@physik.fu-berlin.de Thu Mar 10 19:10:58 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxkK8-0005CM-Vn>; Thu, 10 Mar 2011 19:10:57 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxkK8-0006TZ-TY>; Thu, 10 Mar 2011 19:10:56 +0100 Received: from 1x-193-157-193-223.uio.no ([193.157.193.223]) by inpost2.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtpsa (envelope-from ) id <1PxkK8-0000rI-NZ>; Thu, 10 Mar 2011 19:10:56 +0100 From: Adrian Glaubitz Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Date: Thu, 10 Mar 2011 19:10:55 +0100 Message-Id: <848FC198-4626-46BC-A776-FCF6E8F8E55E@physik.fu-berlin.de> To: linux-minidisc mailing list Mime-Version: 1.0 (Apple Message framework v1082) X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.193.223 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299780656-00005A17-06DE24E5/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.261368, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Benin.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Subject: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Mar 2011 18:10:58 -0000 Hello, after several months of hacking and frustrations, M=E5rten has finally = published his first patch to libhimd to provide write support for MP3s onto HiMDs. For = those of you who don't know what I am talking about: it means that we're finally = able to write our own tracks onto HiMD media with free software and without the = help of SonicStage, meaning we've made a huge steps towards our aim of = completely obsoleting SonicStage and being able to use MiniDisc hardware with = completely free software. The patch itself is quite long (33k) and has not yet been pushed to the = main repository as it certainly requires some testing and clean-up, it can = therefore be found on my web space among other pending patches [1]. You can download and apply the patch to the current git master = repository to test the code yourself. We highly appreciate any feedback, = suggestions and bug reports. The easiest way to test the patch is to apply against a fresh checkout = from the git master, to do so, please follow these steps (instructions for Ubuntu = Linux): - open a terminal or logon through a text console - make sure you have all build dependencies installed, add = "libid3tag0-dev" to that list (see [2] or [3] for MacOS X), thus "sudo apt-get install = libid3tag0-dev" - git clone git://minidisc.dyndns.org/linux-minidisc - wget = http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/pending-patches/= 0001-Enable-transferring-MP3-files-to-HiMD-himddump.patch - cd linux-minidisc - patch -p1 < = ../0001-Enable-transferring-MP3-files-to-HiMD-himddump.patch - qmake-qt4 -r && make - cd himddump - connect and mount your HiMD Walkman - ./himddump /path/to/your/himdwalkman/ writemp3 = /path/to/an/mp3/file.mp3 This will checkout the main repository, download the patch, apply it, = configure and build the code and run himddump to write the mp3 file "file.mp3". In order to see what got written to the disk, use: - ./himddump /path/to/your/himdwalkman/ tracks verbose This should output something like: 1: 4:47 MPEG The Chemical Brothers:Asleep =46rom Day (Surrender 7) = [uploadable] 423 Blocks per 16 KB 0@00000 .. 26@00422 (0000000000000000) Contend ID: 02030000915170fcc35f46c9e707066ea9e983ed Key: 0000000000000000 (EKB 00000000); MAC: 0000000000000000 Recorded: 11/27/2008 12:16:30 AM, start: ?, end: ? 2: 3:02 MPEG F-Zero:Title Screen (Naoto Ishida 1) [uploadable] 268 Blocks per 16 KB 0@00423 .. 77@00690 (19fc347a00000000) Contend ID: 0000000000000000000000000000000000000000 Key: 19fc347a00000000 (EKB 00010012); MAC: 0000000000000000 Recorded: 01/00/2028 12:00:00 AM, start: 01/00/2028:12:00:00 AM, = end: 01/00/2028:12:00:00 AM where the track you just wrote to the HiMD should appear as the last = one, in this case it's a track from the F-Zero SNES game original soundtrack =3D). Please test this code as much as you can, especially on real hardware = and make suggestions and bug reports. We count on you! All the credits for this patch go to M=E5rten, thank you. And, of = course, to Michael who helped him with all the pitfalls and difficulties in libhimd! We hope to be able to push that into git master soon and make it = available in qhimdtransfer. Therefore we need your feedback! Have a lot of fun, Adrian [1] = http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/pending-patches/= [2] = https://wiki.physik.fu-berlin.de/linux-minidisc/doku.php?id=3Dcompilingonl= inux [3] = https://wiki.physik.fu-berlin.de/linux-minidisc/doku.php?id=3Dcompilingonm= ac= From taliesinbardwolf@gmail.com Thu Mar 10 20:17:47 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxlMn-0007G8-QF>; Thu, 10 Mar 2011 20:17:45 +0100 Received: from mail-qy0-f175.google.com ([209.85.216.175]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxlMn-00076X-GS>; Thu, 10 Mar 2011 20:17:45 +0100 Received: by qyk35 with SMTP id 35so4889766qyk.13 for ; Thu, 10 Mar 2011 11:17:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=eU7mk94/403OO0OhYu7Zk9ZkHDqauAe4qtCNS7g2tTM=; b=GOt9Cr3PNNh8tGS/KIwtIj5GNQXHOHM+Ud10oZu+Z7MjI15yqFG43ciPG4vxs8hv6t if53mwcqTjmYz4DyyowGUlBoT8D/FPxHsmemHpJhQToOFGMbcRsKkRwQGNP1Y8BlKyJ3 9h+zTXqMJAyxFuMl1YD+/tTts2TLMQzBSS948= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=HbC1hibMaJlKyidjxnsiQz3C4zZE0fcQ7QE2x7vdVk/dTpFrIuHX3182Gow4EXIdYI WyBh+bUehZdNmAxFFi+sA1uk8tKhv1oRAaBpkl3A3rphqPqDwxIpcXVUNiiFrRgDxeXB 9FUlPBgR3+gnyHFxA9zkASJqubS/LZWCzjzjE= MIME-Version: 1.0 Received: by 10.229.33.9 with SMTP id f9mr6853238qcd.4.1299784664436; Thu, 10 Mar 2011 11:17:44 -0800 (PST) Received: by 10.229.238.66 with HTTP; Thu, 10 Mar 2011 11:17:44 -0800 (PST) In-Reply-To: <848FC198-4626-46BC-A776-FCF6E8F8E55E@physik.fu-berlin.de> References: <848FC198-4626-46BC-A776-FCF6E8F8E55E@physik.fu-berlin.de> Date: Thu, 10 Mar 2011 20:17:44 +0100 Message-ID: From: Taliesin Bardwolf To: Adrian Glaubitz Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Originating-IP: 209.85.216.175 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299784665-00005A17-78749389/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.010705, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Benin.ZEDAT.-Berlin.DE X-Spam-Level: x X-Spam-Status: No, score=1.4 required=5.0 tests=DNS_FROM_RFC_POST, RCVD_BY_IP, SPF_HELO_PASS,SPF_PASS Cc: linux-minidisc mailing list Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Mar 2011 19:17:48 -0000 Hi to everybody! Congratulations to Marten and Michael for this great advance! I still can't use this since I dont have a Linux machine and all my tracks are in atrac format, but I understand what it means, and it's fantastic! Keep the fire on! El jueves 10 de marzo de 2011, Adrian Glaubitz escribi=F3: > Hello, > > after several months of hacking and frustrations, M=E5rten has finally pu= blished his > first patch to libhimd to provide write support for MP3s onto HiMDs. For = those of > you who don't know what I am talking about: it means that we're finally a= ble to > write our own tracks onto HiMD media with free software and without the h= elp > of SonicStage, meaning we've made a huge steps towards our aim of complet= ely > obsoleting SonicStage and being able to use MiniDisc hardware with comple= tely free > software. > > The patch itself is quite long (33k) and has not yet been pushed to the m= ain > repository as it certainly requires some testing and clean-up, it can the= refore > be found on my web space among other pending patches [1]. > > You can download and apply the patch to the current git master repository > to test the code yourself. We highly appreciate any feedback, suggestions > and bug reports. > > The easiest way to test the patch is to apply against a fresh checkout fr= om the git > master, to do so, please follow these steps (instructions for Ubuntu Linu= x): > > - open a terminal or logon through a text console > - make sure you have all build dependencies installed, add "libid3tag0-de= v" > =A0to that list (see [2] or [3] for MacOS X), thus "sudo apt-get install= libid3tag0-dev" > - git clone git://minidisc.dyndns.org/linux-minidisc > - wget http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/pending-= patches/0001-Enable-transferring-MP3-files-to-HiMD-himddump.patch > - cd linux-minidisc > - patch -p1 < ../0001-Enable-transferring-MP3-files-to-HiMD-himddump.patc= h > - qmake-qt4 -r && make > - cd himddump > - connect and mount your HiMD Walkman > - ./himddump /path/to/your/himdwalkman/ writemp3 /path/to/an/mp3/file.mp3 > > This will checkout the main repository, download the patch, apply it, con= figure > and build the code and run himddump to write the mp3 file "file.mp3". > > In order to see what got written to the disk, use: > > - ./himddump /path/to/your/himdwalkman/ tracks verbose > > This should output something like: > > =A0 1: 4:47 MPEG The Chemical Brothers:Asleep From Day (Surrender 7) [up= loadable] > =A0 =A0 =A0 423 Blocks per 16 KB > =A0 =A0 =A0 0@00000 .. =A026@00422 (0000000000000000) > =A0 =A0 Contend ID: 02030000915170fcc35f46c9e707066ea9e983ed > =A0 =A0 Key: 0000000000000000 (EKB 00000000); MAC: 0000000000000000 > =A0 =A0 Recorded: 11/27/2008 12:16:30 AM, start: ?, end: ? > =A0 2: 3:02 MPEG F-Zero:Title Screen (Naoto Ishida 1) [uploadable] > =A0 =A0 =A0 268 Blocks per 16 KB > =A0 =A0 =A0 0@00423 .. =A077@00690 (19fc347a00000000) > =A0 =A0 Contend ID: 0000000000000000000000000000000000000000 > =A0 =A0 Key: 19fc347a00000000 (EKB 00010012); MAC: 0000000000000000 > =A0 =A0 Recorded: 01/00/2028 12:00:00 AM, start: 01/00/2028:12:00:00 AM,= end: 01/00/2028:12:00:00 AM > > where the track you just wrote to the HiMD should appear as the last one,= in this case > it's a track from the F-Zero SNES game original soundtrack =3D). > > Please test this code as much as you can, especially on real hardware and > make suggestions and bug reports. We count on you! > > All the credits for this patch go to M=E5rten, thank you. And, of course,= to Michael > who helped him with all the pitfalls and difficulties in libhimd! > > We hope to be able to push that into git master soon and make it availabl= e > in qhimdtransfer. Therefore we need your feedback! > > Have a lot of fun, > > Adrian > > [1] http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/pending-pat= ches/ > [2] https://wiki.physik.fu-berlin.de/linux-minidisc/doku.php?id=3Dcompili= ngonlinux > [3] https://wiki.physik.fu-berlin.de/linux-minidisc/doku.php?id=3Dcompili= ngonmac > _______________________________________________ > linux-minidisc mailing list > linux-minidisc@lists.fu-berlin.de > https://lists.fu-berlin.de/listinfo/linux-minidisc > From glaubitz@physik.fu-berlin.de Thu Mar 10 20:32:35 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pxlb8-0007mY-HT>; Thu, 10 Mar 2011 20:32:34 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1Pxlb8-0003H1-FW>; Thu, 10 Mar 2011 20:32:34 +0100 Received: from 1x-193-157-193-223.uio.no ([193.157.193.223]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1Pxlb8-0005Di-CA>; Thu, 10 Mar 2011 20:32:34 +0100 Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=us-ascii From: Adrian Glaubitz In-Reply-To: Date: Thu, 10 Mar 2011 20:32:33 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <848FC198-4626-46BC-A776-FCF6E8F8E55E@physik.fu-berlin.de> To: Taliesin Bardwolf X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.193.223 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299785554-00005A17-4E6A29BF/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.271059, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Algerien.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Cc: linux-minidisc mailing list Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Mar 2011 19:32:35 -0000 On Mar 10, 2011, at 8:17 PM, Taliesin Bardwolf wrote: > Hi to everybody! Congratulations to Marten and Michael for this great > advance! I still can't use this since I dont have a Linux machine and > all my tracks are in atrac format, but I understand what it means, and > it's fantastic! Keep the fire on! The code works on Windows or MacOS as well. I just provided the build = instructions for Linux to keep it short. Actually, the instructions can almost = applied 1:1 on MacOS, just the way the id3tag library installed is different. On MacOS, instead of "sudo apt-get install libid3tag0-dev", type: sudo port install libid3tag You may also need to install the port wget, since MacOS X doesn't ship = it, thus: sudo port install wget The rest of the instructions are the same on MacOS. And you can even = transfer MP3 files to your HiMD even if it doesn't support it. You just won't be = able to play them back. But you can, after having transferred them onto the = HiMD, transfer them back with QHiMDTransfer and check if they still play back with VLC or iTunes. Adrian= From manner.moe@gmx.de Thu Mar 10 22:51:46 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pxnlp-0003jP-DV>; Thu, 10 Mar 2011 22:51:45 +0100 Received: from mailout-de.gmx.net ([213.165.64.23]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1Pxnlp-0007QQ-9u>; Thu, 10 Mar 2011 22:51:45 +0100 Received: (qmail invoked by alias); 10 Mar 2011 21:51:45 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp037) with SMTP; 10 Mar 2011 22:51:45 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX19Gj1FfRAFGH8WelolWAH1EmhNh5Vtj6+qtHdj0av ameZzUN3NIf7a4 Date: Thu, 10 Mar 2011 22:51:49 +0100 Message-ID: <00B38E80-880C-4D2A-813A-BC5530EA2F73@gmx.de> X-GeMail-Ref: <848FC198-4626-46BC-A776-FCF6E8F8E55E@physik.fu-berlin.de> From: manner.moe@gmx.de To: "Adrian Glaubitz" Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.23 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299793905-00005A17-43AD3AE8/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.180969, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Benin.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Mar 2011 21:51:46 -0000 >Betreff : [linux-minidisc] First patch for write support on HiMD available >Gesendet: 10.03.2011 19:10:55 >An : "linux-minidisc mailing list " >Von: "Adrian Glaubitz " >----- Originale Nachricht ----- >In order to see what got written to the disk, use: >- ./himddump /path/to/your/himdwalkman/ tracks verbose >This should output something like: > 1: 4:47 MPEG The Chemical Brothers:Asleep From Day (Surrender 7) [uploadable] > 423 Blocks per 16 KB > 0@00000 .. 26@00422 (0000000000000000) > Contend ID: 02030000915170fcc35f46c9e707066ea9e983ed > Key: 0000000000000000 (EKB 00000000); MAC: 0000000000000000 > Recorded: 11/27/2008 12:16:30 AM, start: ?, end: ? > 2: 3:02 MPEG F-Zero:Title Screen (Naoto Ishida 1) [uploadable] > 268 Blocks per 16 KB > 0@00423 .. 77@00690 (19fc347a00000000) > Contend ID: 0000000000000000000000000000000000000000 > Key: 19fc347a00000000 (EKB 00010012); MAC: 0000000000000000 > Recorded: 01/00/2028 12:00:00 AM, start: 01/00/2028:12:00:00 AM, end: 01/00/2028:12:00:00 AM >where the track you just wrote to the HiMD should appear as the last one, in this case >it's a track from the F-Zero SNES game original soundtrack =). I think there is a bug in writing the trkidxXX.hma file. qhimdtransfer doesnīt show the newly uploaded track, SonicStage cannot read the disc ("not initialized by SonicStage") and my RH1 doesnīt show the track, too. There ist a key and EKB number stored in the track info table but these entries should be zero on mp3 files. Also the content ID shouldnīt be zero. Thomas From glaubitz@physik.fu-berlin.de Fri Mar 11 02:00:10 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pxqi8-0001Db-Dl>; Fri, 11 Mar 2011 02:00:08 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1Pxqi8-0001dP-Be>; Fri, 11 Mar 2011 02:00:08 +0100 Received: from kri3-1x-dhcp348.studby.uio.no ([193.157.241.96]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1Pxqi8-0003Bd-5S>; Fri, 11 Mar 2011 02:00:08 +0100 Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=iso-8859-1 From: Adrian Glaubitz In-Reply-To: <00B38E80-880C-4D2A-813A-BC5530EA2F73@gmx.de> Date: Fri, 11 Mar 2011 02:00:07 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <00B38E80-880C-4D2A-813A-BC5530EA2F73@gmx.de> To: manner.moe@gmx.de X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.241.96 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299805208-00005A17-DECFD43E/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.271294, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Botsuana.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 01:00:10 -0000 On Mar 10, 2011, at 10:51 PM, manner.moe@gmx.de wrote: >=20 >> where the track you just wrote to the HiMD should appear as the last = one, in this case >> it's a track from the F-Zero SNES game original soundtrack =3D). >=20 > I think there is a bug in writing the trkidxXX.hma file. qhimdtransfer=20= > doesn=B4t show the newly uploaded track, SonicStage cannot read the = disc=20 > ("not initialized by SonicStage") and my RH1 doesn=B4t show the track, = too.=20 > There ist a key and EKB number stored in the track info table but = these=20 > entries should be zero on mp3 files. > Also the content ID shouldn=B4t be zero. Just for the record. Thomas and I have independently looked into that = bug and Thomas was a bit faster to discover the problem: it's the number of tracks = which is not properly updated in the track index file (track count located at 0x100 in the = track index file), see [1]. Since "himddump" ignores the track count and simply dumps all valid = track info structs it can find, it will display the recently added track. On the = other hand, qhimdtransfer honors the track count and thus does show the recently = added track, so does SonicStage. I'm not a 100% sure, but I think the bug is inside the function = "himd_add_track_info" in libhimd/trackindex.c which does not increase the track count after adding a new track. If not in "himd_add_track_info", the track count has to be increased anywhere else in libhimd/trackindex.c. Adrian [1] = https://wiki.physik.fu-berlin.de/linux-minidisc/doku.php?id=3Dhimddiskform= at#the_track-index_file= From glaubitz@physik.fu-berlin.de Fri Mar 11 02:56:19 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PxraU-0002ro-BF>; Fri, 11 Mar 2011 02:56:18 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1PxraU-00062k-73>; Fri, 11 Mar 2011 02:56:18 +0100 Received: from kri3-1x-dhcp348.studby.uio.no ([193.157.241.96]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1PxraU-0005NF-3U>; Fri, 11 Mar 2011 02:56:18 +0100 Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=iso-8859-1 From: Adrian Glaubitz In-Reply-To: Date: Fri, 11 Mar 2011 02:56:17 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <00B38E80-880C-4D2A-813A-BC5530EA2F73@gmx.de> To: Adrian Glaubitz X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.241.96 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299808578-00005A17-34758477/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.200097, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Benin.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 01:56:19 -0000 On Mar 11, 2011, at 2:00 AM, Adrian Glaubitz wrote: >=20 > On Mar 10, 2011, at 10:51 PM, manner.moe@gmx.de wrote: >>=20 >>> where the track you just wrote to the HiMD should appear as the last = one, in this case >>> it's a track from the F-Zero SNES game original soundtrack =3D). >>=20 >> I think there is a bug in writing the trkidxXX.hma file. = qhimdtransfer=20 >> doesn=B4t show the newly uploaded track, SonicStage cannot read the = disc=20 >> ("not initialized by SonicStage") and my RH1 doesn=B4t show the = track, too.=20 >> There ist a key and EKB number stored in the track info table but = these=20 >> entries should be zero on mp3 files. >> Also the content ID shouldn=B4t be zero. >=20 > Just for the record. Thomas and I have independently looked into that = bug and Thomas > was a bit faster to discover the problem: it's the number of tracks = which is not properly > updated in the track index file (track count located at 0x100 in the = track index file), > see [1]. I added a setbeword16(himd->tifdata + 0x100, himd_track_count(himd) + 1); as a dirty hack at the end of "himd_add_track_info" which forces an = increment of the track count in the track index file. QHiMDTransfer shows the = proper number of tracks now, what makes me wonder, however, is that the track = info for the added track is not set at all, e.g. the track info data is empty for = that track in QHiMDTransfer while himddump shows the complete and proper track information. *puzzled*, Adrian= From manner.moe@gmx.de Fri Mar 11 06:40:17 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pxv5E-0001Op-Jn>; Fri, 11 Mar 2011 06:40:16 +0100 Received: from mailout-de.gmx.net ([213.165.64.23]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1Pxv5E-00052Y-Ff>; Fri, 11 Mar 2011 06:40:16 +0100 Received: (qmail invoked by alias); 11 Mar 2011 05:40:16 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp061) with SMTP; 11 Mar 2011 06:40:16 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX19KdjZLn6hKji/HfhEhBYYq3Ci57gr80aPhZuLAA9 k/GvThBs7fFRDn Date: Fri, 11 Mar 2011 06:40:20 +0100 Message-ID: X-GeMail-Ref: From: manner.moe@gmx.de To: "Adrian Glaubitz" Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.23 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299822016-00005A17-496F71E6/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.035663, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Algerien.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 05:40:18 -0000 >Betreff : Re: [linux-minidisc] First patch for write support on HiMD available >Gesendet: 11.03.2011 02:56:17 >An : "Adrian Glaubitz " >Von: "Adrian Glaubitz " >----- Originale Nachricht ----- >On Mar 11, 2011, at 2:00 AM, Adrian Glaubitz wrote: >> >> On Mar 10, 2011, at 10:51 PM, manner.moe@gmx.de wrote: >>> >>>> where the track you just wrote to the HiMD should appear as the last one, in this case >>>> it's a track from the F-Zero SNES game original soundtrack =). >>> >>> I think there is a bug in writing the trkidxXX.hma file. qhimdtransfer >>> doesnīt show the newly uploaded track, SonicStage cannot read the disc >>> ("not initialized by SonicStage") and my RH1 doesnīt show the track, too. >>> There ist a key and EKB number stored in the track info table but these >>> entries should be zero on mp3 files. >>> Also the content ID shouldnīt be zero. >> >> Just for the record. Thomas and I have independently looked into that bug and Thomas >> was a bit faster to discover the problem: it's the number of tracks which is not properly >> updated in the track index file (track count located at 0x100 in the track index file), >> see [1]. >I added a >>setbeword16(himd->tifdata + 0x100, himd_track_count(himd) + 1); >as a dirty hack at the end of "himd_add_track_info" which forces an increment >of the track count in the track index file. QHiMDTransfer shows the proper >number of tracks now, what makes me wonder, however, is that the track info for >the added track is not set at all, e.g. the track info data is empty for that >track in QHiMDTransfer while himddump shows the complete and proper >track information. You have to add an entry in the play order table, too (see trackslot section in libhimd) at 0x102 + 2 x index. QHiMDTransfer uses trackslots, so we have to create one. Thomas From glaubitz@physik.fu-berlin.de Fri Mar 11 10:30:34 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pxyg5-0000aC-Do>; Fri, 11 Mar 2011 10:30:33 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1Pxyg5-0007Py-Bo>; Fri, 11 Mar 2011 10:30:33 +0100 Received: from kri3-1x-dhcp348.studby.uio.no ([193.157.241.96]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1Pxyg5-0000rQ-8B>; Fri, 11 Mar 2011 10:30:33 +0100 Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=us-ascii From: Adrian Glaubitz In-Reply-To: Date: Fri, 11 Mar 2011 10:30:32 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: <6AACA0E4-9AD1-42C9-90B3-C83E4C44D11A@physik.fu-berlin.de> References: To: manner.moe@gmx.de X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.241.96 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299835833-00005A17-C6E627B5/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.419666, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Algerien.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 09:30:34 -0000 On Mar 11, 2011, at 6:40 AM, manner.moe@gmx.de wrote: >=20 >> I added a >=20 >>> setbeword16(himd->tifdata + 0x100, himd_track_count(himd) + 1); >=20 >> as a dirty hack at the end of "himd_add_track_info" which forces an = increment >> of the track count in the track index file. QHiMDTransfer shows the = proper >> number of tracks now, what makes me wonder, however, is that the = track info for >> the added track is not set at all, e.g. the track info data is empty = for that >> track in QHiMDTransfer while himddump shows the complete and proper >> track information. >=20 > You have to add an entry in the play order table, too (see trackslot = section=20 > in libhimd) at 0x102 + 2 x index. > QHiMDTransfer uses trackslots, so we have to create one. Ok, I had no idea about the trackslots. Thanks for letting me know! I = will try what you suggested. Adrian= From manner.moe@gmx.de Fri Mar 11 18:55:47 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Py6Z0-0000vM-1T>; Fri, 11 Mar 2011 18:55:46 +0100 Received: from mailout-de.gmx.net ([213.165.64.22]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1Py6Yz-0006Ca-TU>; Fri, 11 Mar 2011 18:55:46 +0100 Received: (qmail invoked by alias); 11 Mar 2011 17:55:45 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp006) with SMTP; 11 Mar 2011 18:55:45 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX1+44INYNMW4uDU1HjYP3ZPE19+DelUsLSeKG+RKGE h3BhRXBE3iHQOs Date: Fri, 11 Mar 2011 18:55:48 +0100 Message-ID: <84CB0521-AE5D-4D80-ACC8-C0BE736762BD@gmx.de> X-GeMail-Ref: <6AACA0E4-9AD1-42C9-90B3-C83E4C44D11A@physik.fu-berlin.de> From: manner.moe@gmx.de To: "Adrian Glaubitz" Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.22 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1299866146-00005A17-4D4E7B8D/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.022446, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Gabun.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Mar 2011 17:55:47 -0000 >Betreff : Re: [linux-minidisc] First patch for write support on HiMD available >Gesendet: 11.03.2011 10:30:32 >An : "manner.moe@gmx.de" >Von: "Adrian Glaubitz " >----- Originale Nachricht ----- >On Mar 11, 2011, at 6:40 AM, manner.moe@gmx.de wrote: >> >>> I added a >> >>>> setbeword16(himd->tifdata + 0x100, himd_track_count(himd) + 1); >> >>> as a dirty hack at the end of "himd_add_track_info" which forces an increment >>> of the track count in the track index file. QHiMDTransfer shows the proper >>> number of tracks now, what makes me wonder, however, is that the track info for >>> the added track is not set at all, e.g. the track info data is empty for that >>> track in QHiMDTransfer while himddump shows the complete and proper >>> track information. >> >> You have to add an entry in the play order table, too (see trackslot section >> in libhimd) at 0x102 + 2 x index. >> QHiMDTransfer uses trackslots, so we have to create one. >Ok, I had no idea about the trackslots. Thanks for letting me know! I will >try what you suggested. >Adrian At ofset 0x0100 in the trkidx file the play order table is stored. First word is the track count an the next words is a map containig the track numbers and the order they will appear in the track list. Second word is the first physical track and the value is the track number of this track in the track list. Third word ist the second phys. track, .... An Example: We have 3 Tracks, so the play orter table should look like this 00 03 00 01 00 02 00 03 00 00 00 ... If we move track 3 to the first position we have 00 03 00 03 00 01 00 02 00 00 00 ... Itīs a kind of map between the physical order of tracks in the atdata file and the order of tracks shown in the playlist. Thomas From manner.moe@gmx.de Mon Mar 14 20:56:22 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PzDsK-0004d7-QN>; Mon, 14 Mar 2011 20:56:21 +0100 Received: from mailout-de.gmx.net ([213.165.64.23]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1PzDsK-0003ok-JT>; Mon, 14 Mar 2011 20:56:20 +0100 Received: (qmail invoked by alias); 14 Mar 2011 19:56:19 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp067) with SMTP; 14 Mar 2011 20:56:19 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX1+h7q1GXhah5m7n3w51n2QAtzjy5Rlx3wo+oo+OEl 6kkfx/2+t+C6Wt Date: Mon, 14 Mar 2011 20:56:17 +0100 Message-ID: <0826407D-ECEF-4D60-BB75-1829DED5E4A2@gmx.de> X-GeMail-Ref: <848FC198-4626-46BC-A776-FCF6E8F8E55E@physik.fu-berlin.de> From: manner.moe@gmx.de To: "Adrian Glaubitz" Content-Type: multipart/mixed; boundary="=_gcmail5" MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.23 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1300132580-00005A17-AF97006F/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.051562, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Benin.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Mar 2011 19:56:22 -0000 This is a multi-part message in MIME format --=_gcmail5 Content-Type: multipart/alternative; boundary="=_gcmail5_alt" --=_gcmail5_alt Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit >----- Originale Nachricht ----- >Hello, >after several months of hacking and frustrations, Mårten has finally published his >first patch to libhimd to provide write support for MP3s onto HiMDs. First, thanks for the great work. >Please test this code as much as you can, especially on real hardware and >make suggestions and bug reports. We count on you! O.K., i made some tests on 32bit Windows XP using my RH1 and a blank 74min minidisc initialized with SonicStage. First of all I noticed that SonicStage cannot use the disc because it is not initialized with SonicStage, my RH1 doesnīt recognized the new track and QHimdTransfer cannot find the new track, too Only himddump seems to find the track. The reason ist that the play order table inside trkidxXX.hma file (at 0x100) is not updated. After fixing this the RH1 and QHiMDTransfer can find the track but my RH1 cannot play it (errormessage "cannot play"). QHiMDTransfer can upload it again, this works fine. So, i downloaded the same file with SonicStage and compared itīs entries in the trkidx file: from SonicStage downoad: 0x8050: 00 00 00 00 00 00 00 00 00 01 00 03 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 03 00 B0 00 01 00 01 01 E2 10 01 D9 10 00 00 01 0F 50 00 00 04 00 00 00 52 E4 26 C3 6E F4 A8 2F 29 8C 25 00 00 00 00 00 00 00 00 01 00 40 00 0x30010: 00 00 00 00 00 00 00 00 00 00 01 D9 00 0D 00 00 from himddump download 0x8050: 60 20 00 00 00 01 00 12 00 01 00 00 00 00 01 00 87 4C 4F 70 00 00 00 00 00 00 00 00 00 00 00 00 01 03 00 00 00 01 00 01 01 E2 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60 20 00 00 60 20 00 00 00 00 00 00 0x30010: 87 4C 4F 70 00 00 00 00 00 00 01 D8 00 1D 00 00 I made some more changes to let them look similar. - leave trackkey and fragmentkey clear (zero) - set ekbnum to zero - insert random number generated contentid - insert codec specific information (mp3 file dependent) - insert DRM information (magical bitfields: Lt, Dest, Xcc, Cc) - insert "SMPA" string and low 32bit of contentid in audio block footer Most of my changes are just dirty hacks, but this this should work for debugging. Now it looks like this: 0x8050: 60 20 00 00 00 00 00 00 00 01 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 03 00 B0 00 01 00 01 01 E2 10 01 D9 10 00 00 02 03 00 00 4C 3B 6F E8 0D EF BA 33 2D 44 8F 80 EF 5C 37 E6 60 20 00 00 60 20 00 00 01 00 40 00 0x30010: 00 00 00 00 00 00 00 00 00 00 01 D8 00 1D 00 00 not fixed yet: - SonicStage seems to need more frames for the same track (maybe it converts the file into another sample rate ?) - dos_settime seems not to work correctly (only on windows?) - links to string table (title, artist, album) are not set correctly? title is stored at index 01 (0x40010) of string table but is shown as "unknown title" in himddump, artist and album are not set. - RH1 cannot play this track anyway and SonicStage cannot use the disc. The "cannot play" error message of my RH1 should only appear for incorrect DRM rights or incompatible mp3 encoding as far as i know. The codec of my test file is MPEG1 Layer3, stereo, 128kb/s@44k1Hz, can anyone please give me the correct codec specific information to set in the track info? One more bug is in using the correct trkidx file when downloading a track to a disc that is not blanc. I tested this on a disc with the current index 2 (atdata02.hma, mclist012.hma, trkidx02.hma). After download the new trackinfo is stored in trkidx01.hma, trkidx02.hma is unchanged and a new temporary file trkidx.tmp is stored. Maybe itīs better to just change the contents of the current trkidx file instead of scanning for tif files (mp3 only). For future use (atrac download), which needs update of the current index, just change the contents of the backup trkidx file and rename it. I think these files have fix sectors on the disc (not confirmed), so storing or moving of files could make the disc unreadable for himd recorders and SonicStage. I tested this at the beginning of our project. I moved all the files in HMDHIFI folder to my harddisc and restored it. The disc was unreadable by all my recorders (audio file error) and SonicStage, i left the files unchanged. You can find my changes in the attached modified patch. Thomas --=_gcmail5_alt-- --=_gcmail5 Content-Type: application/octet-stream; name="0001-Changing-mp3-transfer-routines.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Changing-mp3-transfer-routines.patch" ZGlmZiAtLWdpdCBhL2hpbWRkdW1wL2hpbWRkdW1wLmMgYi9oaW1kZHVtcC9oaW1kZHVtcC5jCmlu ZGV4IDQ4ZDU4MjkuLjIzZjNiYWEgMTAwNjQ0Ci0tLSBhL2hpbWRkdW1wL2hpbWRkdW1wLmMKKysr IGIvaGltZGR1bXAvaGltZGR1bXAuYwpAQCAtMyw5ICszLDEzIEBACiAgKi8KIAogI2luY2x1ZGUg PHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8Z2xpYi5oPgogI2luY2x1 ZGUgPGxvY2FsZS5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPG1hZC5oPgorI2lu Y2x1ZGUgPGlkM3RhZy5oPgorI2luY2x1ZGUgPGdsaWIvZ3N0ZGlvLmg+CiAKICNpbmNsdWRlICJo aW1kLmgiCiAjaW5jbHVkZSAic29ueV9vbWEuaCIKQEAgLTIxLDkgKzI1LDU5IEBAIHZvaWQgdXNh Z2UoY2hhciAqIGNtZG5hbWUpCiAgICAgICAgICAgbXAza2V5IDxUUks+ICAgICAtIHNob3cgdGhl IE1QMyBlbmNyeXB0aW9uIGtleSBmb3IgdHJhY2sgPFRSSz5cblwKICAgICAgICAgICBkdW1wdHJh Y2sgPFRSSz4gIC0gZHVtcCB0cmFjayA8VFJLPlxuXAogICAgICAgICAgIGR1bXBtcDMgPFRSSz4g ICAgLSBkdW1wIE1QMyB0cmFjayA8VFJLPlxuXAotICAgICAgICAgIGR1bXBub25tcDMgPFRSSz4g LSBkdW1wIG5vbi1NUDMgdHJhY2wgPFRSSz5cbiIsIGNtZG5hbWUpOworICAgICAgICAgIGR1bXBu b25tcDMgPFRSSz4gLSBkdW1wIG5vbi1NUDMgdHJhY2sgPFRSSz5cblwKKyAgICAgICAgICB3cml0 ZW1wMyA8RklMRT4gIC0gd3JpdGUgbXAzIHRvIGRpc2NcbiIsIGNtZG5hbWUpOwogfQogCisvKgor c3RhdGljIHZvaWQgcHJpbnRfaGV4KHVuc2lnbmVkIGNoYXIqIGJ1Ziwgc2l6ZV90IHNpemUpCit7 CisJaW50IGkgPSAwOworCWludCBqID0gMDsKKwlpbnQgYnJlYWtwb2ludCA9IDA7CisKKwlmb3Io O2kgPCAoaW50KXNpemU7IGkrKykKKwl7CisJCXByaW50ZigiJTAyeCAiLCBidWZbaV0pOworCQli cmVha3BvaW50Kys7CisJCWlmKCEoKGkgKyAxKSUxNikgJiYgaSkKKwkJeworCQkJcHJpbnRmKCJc dFx0Iik7CisJCQlmb3IoaiA9ICgoaSsxKSAtIDE2KTsgaiA8ICgoaSsxKS8xNikgKiAxNjsgaisr KQorCQkJeworCQkJCWlmKGJ1ZltqXSA8IDMwKQorCQkJCQlwcmludGYoIi4iKTsKKwkJCQllbHNl CisJCQkJCXByaW50ZigiJWMiLCBidWZbal0pOworCQkJfQorCQkJcHJpbnRmKCJcbiIpOworCQkJ YnJlYWtwb2ludCA9IDA7CisJCX0KKwl9CisKKwlpZihicmVha3BvaW50ID09IDE2KQorCXsKKwkJ cHJpbnRmKCJcbiIpOworCQlyZXR1cm47CisJfQorCisJZm9yKDsgYnJlYWtwb2ludCA8IDE2OyBi cmVha3BvaW50KyspCisJeworCQlwcmludGYoIiAgICIpOworCX0KKwlwcmludGYoIlx0XHQiKTsK KworCWZvcihqID0gc2l6ZSAtIChzaXplJTE2KTsgaiA8IChpbnQpc2l6ZTsgaisrKQorCXsKKwkJ aWYoYnVmW2pdIDwgMzApCisJCQlwcmludGYoIi4iKTsKKwkJZWxzZQorCQkJcHJpbnRmKCIlYyIs IGJ1ZltqXSk7CisJfQorCXByaW50ZigiXG4iKTsKK30KKyovCisKIHN0YXRpYyBjb25zdCBjaGFy ICogaGV4ZHVtcCh1bnNpZ25lZCBjaGFyICogaW5wdXQsIGludCBsZW4pCiB7CiAgICAgc3RhdGlj IGNoYXIgZHVtcHNwYWNlWzVdWzQxXTsKQEAgLTMyNiw2ICszODAsNDM0IEBAIHZvaWQgaGltZF9k dW1waG9sZXMoc3RydWN0IGhpbWQgKiBoKQogICAgICAgICBwcmludGYoIiVkOiAlMDV1LSUwNXVc biIsIGksIGhvbGVzLmhvbGVzW2ldLmZpcnN0YmxvY2ssIGhvbGVzLmhvbGVzW2ldLmxhc3RibG9j ayk7CiB9CiAKKwordm9pZCBnZXRfc29uZ2luZm8oY29uc3QgY2hhciAqZmlsZXBhdGgsIGdjaGFy ICoqIGFydGlzdCwgZ2NoYXIgKiogdGl0bGUsIGdjaGFyICoqYWxidW0pCit7CisgICAgLy8gICAg cHJpbnRmKCJEQkc6IGdldF9zb25naW5mbygpXG4iKTsKKyAgICBzdHJ1Y3QgaWQzX2ZpbGUgKiBm aWxlOworICAgIHN0cnVjdCBpZDNfZnJhbWUgY29uc3QgKmZyYW1lOworICAgIHN0cnVjdCBpZDNf dGFnICp0YWc7CisgICAgdW5pb24gaWQzX2ZpZWxkIGNvbnN0ICpmaWVsZDsKKworICAgIGZpbGUg PSBpZDNfZmlsZV9vcGVuKGZpbGVwYXRoICwgSUQzX0ZJTEVfTU9ERV9SRUFET05MWSk7CisKKyAg ICB0YWcgPSBpZDNfZmlsZV90YWcoZmlsZSk7CisgICAgaWYoIXRhZykKKwl7CisJICAgIHByaW50 Zigibm8gdGFnc1xuIik7CisJICAgIGlkM19maWxlX2Nsb3NlKGZpbGUpOworCSAgICByZXR1cm47 CisJfQorCisgICAgLy8gQXJ0aXN0CisgICAgZnJhbWUgPSBpZDNfdGFnX2ZpbmRmcmFtZSAodGFn LCBJRDNfRlJBTUVfQVJUSVNULCAwKTsKKyAgICBpZihmcmFtZSAmJiAoZmllbGQgPSAmZnJhbWUt PmZpZWxkc1sxXSkpCisJeworCSAgICBpZihpZDNfZmllbGRfZ2V0bnN0cmluZ3MoZmllbGQpID4g MCkKKwkJeworCQkgICAgLy9wcmludGYoIkRCRzogZm91bmQgYXJ0aXN0XG4iKTsKKwkJICAgIGdj aGFyICp1dGY4ID0gTlVMTDsKKworCQkgICAgdXRmOCA9IChnY2hhciopIGlkM191Y3M0X3V0Zjhk dXBsaWNhdGUoIGlkM19maWVsZF9nZXRzdHJpbmdzKGZpZWxkLDApKTsKKwkJICAgICphcnRpc3Qg PSB1dGY4OworCQkgICAgLy8gZml4OiB1dGY4IGJ1ZmZlcgorCisJCX0KKwl9CisKKyAgICAvLyBU aXRsZQorICAgIGZyYW1lID0gaWQzX3RhZ19maW5kZnJhbWUgKHRhZywgSUQzX0ZSQU1FX1RJVExF LCAwKTsKKyAgICBpZihmcmFtZSAmJiAoZmllbGQgPSAmZnJhbWUtPmZpZWxkc1sxXSkpCisJewor CSAgICBpZihpZDNfZmllbGRfZ2V0bnN0cmluZ3MoZmllbGQpID4gMCkKKwkJeworCQkgICAgLy8J CSAgICBwcmludGYoIkRCRzogZm91bmQgdGl0bGVcbiIpOworCQkgICAgZ2NoYXIgKnV0ZjggPSBO VUxMOworCisJCSAgICB1dGY4ID0gKGdjaGFyKikgaWQzX3VjczRfdXRmOGR1cGxpY2F0ZSggaWQz X2ZpZWxkX2dldHN0cmluZ3MoZmllbGQsMCkpOworCQkgICAgKnRpdGxlID0gdXRmODsKKwkJICAg IC8vIGZpeDogdXRmOCBidWZmZXIKKwkJfQorCX0KKworICAgIC8vIEFsYnVtCisgICAgZnJhbWUg PSBpZDNfdGFnX2ZpbmRmcmFtZSAodGFnLCBJRDNfRlJBTUVfQUxCVU0sIDApOworICAgIGlmKGZy YW1lICYmIChmaWVsZCA9ICZmcmFtZS0+ZmllbGRzWzFdKSkKKwl7CisJICAgIGlmKGlkM19maWVs ZF9nZXRuc3RyaW5ncyhmaWVsZCkgPiAwKQorCQl7CisJCSAgICAvL3ByaW50ZigiREJHOiBmb3Vu ZCBhbGJ1bVxuIik7CisJCSAgICBnY2hhciAqdXRmOCA9IE5VTEw7CisKKwkJICAgIHV0ZjggPSAo Z2NoYXIqKSBpZDNfdWNzNF91dGY4ZHVwbGljYXRlKCBpZDNfZmllbGRfZ2V0c3RyaW5ncyhmaWVs ZCwwKSk7CisJCSAgICAqYWxidW0gPSB1dGY4OworCQkgICAgLy8gZml4OiB1dGY4IGJ1ZmZlcgor CQl9CisJfQorCisgICAgaWQzX2ZpbGVfY2xvc2UoZmlsZSk7Cit9CisKK3ZvaWQgYmxvY2tfaW5p dChzdHJ1Y3QgYmxvY2tpbmZvICogYiwgc2hvcnQgaW50IG5mcmFtZXMsIHNob3J0IGludCBsZW5k YXRhLCB1bnNpZ25lZCBpbnQgc2VyaWFsX251bWJlciwgdW5zaWduZWQgY2hhciAqIGNpZCkKK3sK KyAgICBiLT5uZnJhbWVzICAgICAgID0gbmZyYW1lczsKKyAgICBiLT5tY29kZSAgICAgICAgID0g MDsKKyAgICBiLT5sZW5kYXRhICAgICAgID0gbGVuZGF0YTsKKyAgICBiLT5yZXNlcnZlZDEgICAg ID0gMDsKKyAgICBiLT5zZXJpYWxfbnVtYmVyID0gc2VyaWFsX251bWJlcjsKKyAgICBtZW1zZXQo JmItPmtleSwgMCwgOCk7ICAvKiB1c2UgemVybyBrZXkgb24gbXAzIGZpbGVzICovCisgICAgLy8g ICAgcHJpbnRfaGV4KCh1bnNpZ25lZCBjaGFyKikmYi0+a2V5LCA4KTsKKyAgICBtZW1zZXQoJmIt Pml2LCAwLCA4KTsKKyAgICBtZW1zZXQoJmItPmJhY2t1cF9rZXksIDAsIDgpOworICAgIHN0cm5j cHkoKGNoYXIqKSZiLT5iYWNrdXBfdHlwZSwiU1BNQSIsIDQpOworICAgIG1lbXNldCgmYi0+cmVz ZXJ2ZWQyLCAwLCA4KTsKKyAgICBiLT5iYWNrdXBfcmVzZXJ2ZWQgICAgICA9IDA7CisgICAgYi0+ YmFja3VwX21jb2RlICAgICAgICAgPSAwOworICAgIGItPmxvMzJfY29udGVudGlkID0gY2lkWzE2 XSoxNjc3NzIxNitjaWRbMTddKjY1NTM2K2NpZFsxOF0qMjU2K2NpZFsxOV07CisgICAgYi0+YmFj a3VwX3NlcmlhbF9udW1iZXIgPSBzZXJpYWxfbnVtYmVyOworfQorCit2b2lkIGJsb2NrX3ByaW50 aW5mbyhzdHJ1Y3QgYmxvY2tpbmZvICogYikKK3sKKyAgICBwcmludGYoImJsb2NrICVkLCBuZnJh bWVzOiAlZCwgbGVuZGF0YTogJWRcbiIsCisJICAgYi0+c2VyaWFsX251bWJlciwgYi0+bmZyYW1l cywgYi0+bGVuZGF0YSk7Cit9CisKK3N0cnVjdCBhYnVja2V0Cit7CisgICAgZ2ludCB0b3RzaXpl OworICAgIGdpbnQgbmZyYW1lczsKKyAgICB1bnNpZ25lZCBjaGFyICpwYnVmX2N1cnJlbnQsICpw YnVmX2VuZDsKKyAgICBzdHJ1Y3QgYmxvY2tpbmZvIGJsb2NrOworfTsKKwordm9pZCBidWNrZXRf aW5pdChzdHJ1Y3QgYWJ1Y2tldCAqIHBidWNrZXQpCit7CisgICAgZ19hc3NlcnQocGJ1Y2tldCAh PSBOVUxMKTsKKyAgICBtZW1zZXQoJnBidWNrZXQtPmJsb2NrLCAwLCBzaXplb2Yoc3RydWN0IGJs b2NraW5mbykpOworCisgICAgcGJ1Y2tldC0+dG90c2l6ZSA9IDA7CisgICAgcGJ1Y2tldC0+bmZy YW1lcyA9IDA7CisgICAgcGJ1Y2tldC0+cGJ1Zl9jdXJyZW50ID0gJnBidWNrZXQtPmJsb2NrLmF1 ZGlvX2RhdGFbMF07CisgICAgcGJ1Y2tldC0+cGJ1Zl9lbmQgICAgID0gJnBidWNrZXQtPmJsb2Nr LmF1ZGlvX2RhdGFbSElNRF9BVURJT19TSVpFXTsKK30KKworaW50IGJ1Y2tldF9hcHBlbmQoc3Ry dWN0IGFidWNrZXQgKiBwYnVja2V0LCBnY2hhciAqIHBmcmFtZSwgZ3VpbnQgZnJhbWVsZW4pCit7 CisgICAgZ19hc3NlcnQocGJ1Y2tldCAhPSBOVUxMKTsKKyAgICBnX2Fzc2VydChwZnJhbWUgIT0g TlVMTCk7CisKKyAgICBnaW50IG5ieXRlc190b19hZGQgPSBmcmFtZWxlbjsKKworICAgIC8vICAg IHByaW50ZigidG90c2l6ZTogJWQsIGZyYW1lbGVuOiAlZFxuIiwgcGJ1Y2tldC0+dG90c2l6ZSwg bmJ5dGVzX3RvX2FkZCk7CisKKyAgICAvLyBCdWZmZXIgZnVsbD8gb3IgdG9vIGJpZyBmcmFtZSBm b3IgYnVmZmVyPworICAgIGlmKCAocGJ1Y2tldC0+dG90c2l6ZSArIG5ieXRlc190b19hZGQpID49 IEhJTURfQVVESU9fU0laRSkKKwl7CisJICAgIGlmKHBidWNrZXQtPnRvdHNpemUgPT0gMCkKKwkJ eworCQkgICAgLy8JCSAgICBwcmludGYoImZyYW1lICVkIGlzIHRvbyBiaWcgZm9yIHRoZSBibG9j a1xuIiwgcGJ1Y2tldC0+bmZyYW1lcyk7CisJCSAgICByZXR1cm4gMDsKKwkJfQorCSAgICAvLwkg ICAgcHJpbnRmKCJidWNrZXRfYXBwZW5kOiBibG9jayBpcyBmdWxsLCB0b3RzaXplOiAlZFxuIiwg cGJ1Y2tldC0+dG90c2l6ZSk7CisJICAgIC8vCSAgICBwcmludF9oZXgoICZwYnVja2V0LT5ibG9j ay5hdWRpb19kYXRhWzBdLCAxMDApOworCSAgICByZXR1cm4gLTE7CisJfQorCisgICAgZ19hc3Nl cnQocGJ1Y2tldC0+cGJ1Zl9jdXJyZW50IDw9IHBidWNrZXQtPnBidWZfZW5kKTsKKworICAgIG1l bWNweShwYnVja2V0LT5wYnVmX2N1cnJlbnQsIHBmcmFtZSwgbmJ5dGVzX3RvX2FkZCk7CisKKyAg ICBwYnVja2V0LT5wYnVmX2N1cnJlbnQgKz0gbmJ5dGVzX3RvX2FkZDsKKyAgICBwYnVja2V0LT50 b3RzaXplICs9IG5ieXRlc190b19hZGQ7CisgICAgcGJ1Y2tldC0+bmZyYW1lcyArPSAxOworCisg ICAgcmV0dXJuIG5ieXRlc190b19hZGQ7Cit9CisKKy8vCisvLyBJbnB1dCBwYXJhbWV0ZXJzOgor Ly8KKy8vICBBIG9wZW5lZCBtcDMtc3RyZWFtLCBoaW1kLXdyaXRlLXN0cmVhbSwgZHVyYXRpb24g c3RydWN0dXJlLCAoVE9ETykgYmxvY2stb2JmdXNjYXRpb24ta2V5CisvLworLy8gUmV0dXJuIHZh bHVlczoKKy8vCisvLyAgUmV0dXJuIHRoZSBudW1iZXIgb2Ygd3JpdHRlbiBibG9ja3MgYW5kIGZy YW1lcworLy8KKy8vIFNpZGUtZWZmZWN0czoKKy8vCisvLyAgV3JpdGVzIGF1ZGlvIGJsb2NrcyBh dCB0aGUgZW5kIG9mIHRoZSBBVERBVEEgY29udGFpbmVyIGZpbGUuIEF1ZGlvIGJsb2NrcyBjb250 YWlucyBhbGwgZnJhbWVzIChUT0RPOiBJRDMgZnJhbWVzKQorLy8gIGluIGEgb2JmdXNjYXRlZCBm b3JtIHVzaW5nIGEgNCBieXRlIGtleS4KKy8vCitnaW50IHdyaXRlX2Jsb2NrcyhzdHJ1Y3QgbWFk X3N0cmVhbSAqc3RyZWFtLCBzdHJ1Y3QgaGltZF93cml0ZXN0cmVhbSAqd3JpdGVfc3RyZWFtLCBt cDNrZXkga2V5LAorICAgICAgICAgICAgICAgICAgIG1hZF90aW1lcl90ICpkdXJhdGlvbiwgZ2lu dCAqbmJsb2NrcywgZ2ludCAqbmZyYW1lcywgdW5zaWduZWQgY2hhciAqIGNpZCwgc3RydWN0IGhp bWRlcnJpbmZvICogc3RhdHVzKQoreworICAgIHN0cnVjdCBhYnVja2V0IGJ1Y2tldDsKKyAgICBz dHJ1Y3QgbWFkX2hlYWRlciBoZWFkZXI7CisgICAgbWFkX3RpbWVyX3QgbWFkX3RpbWVyOworCisg ICAgZ2ludCBpYmxvY2s9MCwgaWZyYW1lPTA7CisgICAgZ2ludCBsZW5ibG9ja3M9MDsKKworICAg IG1hZF90aW1lcl9yZXNldCgmbWFkX3RpbWVyKTsKKyAgICBidWNrZXRfaW5pdCgmYnVja2V0KTsK KworICAgIHdoaWxlKDEpIHsKKworCWlmKG1hZF9oZWFkZXJfZGVjb2RlKCZoZWFkZXIsIHN0cmVh bSkgPT0gLTEpIHsKKwkgICAgLy8JICAgIHByaW50ZigiIyMgbWFkX2ZyYW1lX2RlY29kZSgpIGVy cm9yOiAlZCwgJXNcbiIsIHN0cmVhbS0+ZXJyb3IsIG1hZF9zdHJlYW1fZXJyb3JzdHIoc3RyZWFt KSk7CisJICAgIGlmKE1BRF9SRUNPVkVSQUJMRShzdHJlYW0tPmVycm9yKSkKKwkJeworCQkgICAg Ly8gCQkgICAgcHJpbnRmKCJNQURfUkVDT1ZFUkFCTEVcbiIpOworCQkgICAgY29udGludWU7CisJ CX0KKwkgICAgZWxzZSB7CisJCS8vcHJpbnRmKCJVbnJlY292ZXJhYmxlIGVycm9yXG4iKTsKKwkJ YnJlYWs7CisJICAgIH0KKwl9CisgICAgICAgIGdjaGFyICogcGZyYW1lID0gKGdwb2ludGVyKSBz dHJlYW0tPnRoaXNfZnJhbWU7CisJZ2ludCBmcmFtZWxlbiA9IChndWludCkgKHN0cmVhbS0+bmV4 dF9mcmFtZSAtIHN0cmVhbS0+dGhpc19mcmFtZSk7CisKKwltYWRfdGltZXJfYWRkKCZtYWRfdGlt ZXIsIGhlYWRlci5kdXJhdGlvbik7CisKKwkvLworCS8vIERCRzogZnJhbWUgcmVhZC4KKwkvLwor CS8vCXByaW50ZigiREJHKGZyYW1lOiAlZCk6IHBmcmFtZTogJXAsIGZyYW1lbGVuOiAlZFxuIiwg aWZyYW1lLCBwZnJhbWUsIGZyYW1lbGVuKTsKKwkvLwlwcmludF9oZXgoKHZvaWQqKSBwZnJhbWUs IDEwKTsKKworCS8vIEFwcGVuZCBmcmFtZXMgdG8gYmxvY2sKKwlnaW50IG5ieXRlc19hZGRlZCA9 IGJ1Y2tldF9hcHBlbmQoJmJ1Y2tldCwgcGZyYW1lLCBmcmFtZWxlbik7CisJaWYobmJ5dGVzX2Fk ZGVkIDwgMCkgeworCSAgICAvL3ByaW50ZigiREJHOiBCdWNrZXQgZnVsbCFcbiIpOworICAgICAg ICAgICAgYmxvY2tfaW5pdCgmYnVja2V0LmJsb2NrLCBidWNrZXQubmZyYW1lcywgYnVja2V0LnRv dHNpemUsIGlibG9jaywgY2lkKTsKKworCSAgICAvLwkgICAgYmxvY2tfcHJpbnRpbmZvKCZidWNr ZXQuYmxvY2spOworCisJICAgIC8vIG9iZnVzY2F0ZSBhdWRpby1kYXRhIHVzaW5nIGtleSBkZXJp dmVkIGZyb20gdHJhY2stbnVtYmVyCisJICAgIC8vCSAgICBwcmludGYoIlxuIERlY3J5cHRlZCxm aXJzdCAzMCBieXRlczpcbiIpOworCSAgICAvLyBwcmludF9oZXgoJmJ1Y2tldC5ibG9jay5hdWRp b19kYXRhWzBdLCAzMCk7CisKKwkgICAgLy8gRW5jcnlwdCBibG9jaworCSAgICBpbnQgaT0wOwor CSAgICBmb3IoaT0wO2kgPCBidWNrZXQudG90c2l6ZTsgaSsrKQorCQlidWNrZXQuYmxvY2suYXVk aW9fZGF0YVtpXSBePSBrZXlbaSAmIDNdOworCisJICAgIC8vIEFwcGVuZCBibG9jayB0byBBVERB VEEgZmlsZQorCSAgICBpZihoaW1kX3dyaXRlc3RyZWFtX3dyaXRlKHdyaXRlX3N0cmVhbSwgJmJ1 Y2tldC5ibG9jaywgc3RhdHVzKSA8IDApCisJCXsKKwkJICAgIGZwcmludGYoc3RkZXJyLCAiRmFp bGVkIHRvIHdyaXRlIGJsb2NrOiAlZCIsIGlibG9jayk7CisJCSAgICBwZXJyb3IoIndyaXRlIGJs b2NrIik7CisJCX0KKworCSAgICBsZW5ibG9ja3MgKz0gYnVja2V0LnRvdHNpemU7CisJICAgIC8v cHJpbnRmKCJcbiBFbmNyeXB0ZWQsIGZpcnN0IDMwIGJ5dGVzOiBcbiIpOworCSAgICAvLwkgICAg cHJpbnRfaGV4KCZidWNrZXQuYmxvY2suYXVkaW9fZGF0YVswXSwgMzApOworCisJICAgIGJ1Y2tl dF9pbml0KCZidWNrZXQpOworCisJICAgIC8vIEFwcGVuZCB0aGUgZnJhbWUgdG8gYSBuZXcgYmxv Y2ssIHRoYXQgbm90IHdvdWxkIGZpdCBpbiB0aGUgcHJldmlvdXMgZnVsbCBibG9jaworCSAgICBu Ynl0ZXNfYWRkZWQgPSBidWNrZXRfYXBwZW5kKCZidWNrZXQsIHBmcmFtZSwgZnJhbWVsZW4pOwor CSAgICBpZihuYnl0ZXNfYWRkZWQgPCAwKSB7CisJCS8vcHJpbnRmKCJFUlJPUjogVW5leHBlY3Rl ZCBmdWxsIGJsb2NrXG4iKTsKKwkJZXhpdCgxKTsKKwkgICAgfQorCSAgICBlbHNlIGlmKG5ieXRl c19hZGRlZCA9PSAwKSB7CisJCS8vcHJpbnRmKCJEQkc6IEZyYW1lIGlzIHRvbyBiaWcgZm9yIGJs b2NrXG4iKTsKKwkJaWZyYW1lKys7ICAvLyBTa2lwIGZyYW1lCisJICAgIH0KKwkgICAgZWxzZQor CQlpZnJhbWUrKzsKKworCSAgICBpYmxvY2sgKz0gMTsKKwkgICAgY29udGludWU7CisJfQorCWVs c2UgaWYobmJ5dGVzX2FkZGVkID09IDApIHsKKwkgICAgLy9wcmludGYoIkRCRzogRnJhbWUgaXMg dG9vIGJpZyBmb3IgYmxvY2tcbiIpOworCSAgICBidWNrZXRfaW5pdCgmYnVja2V0KTsKKwkgICAg aWZyYW1lKys7CisJICAgIGNvbnRpbnVlOworCX0KKwllbHNlIHsKKwkgICAgLy9wcmludGYoIkRC RzogQWRkZWQgJWkgYnl0ZXNcbiIsIG5ieXRlc19hZGRlZCk7CisJICAgIGlmcmFtZSsrOworCisJ fQorICAgIH0KKworICAgIGlmKCAobmJsb2NrcyAhPSBOVUxMKSAmJiAobmZyYW1lcyAhPSBOVUxM KSAmJiAoZHVyYXRpb24gIT0gTlVMTCkpCisJeworCSAgICAqbmJsb2NrcyA9IGlibG9jazsKKwkg ICAgKm5mcmFtZXMgPSBpZnJhbWU7CisJICAgIGR1cmF0aW9uLT5zZWNvbmRzID0gbWFkX3RpbWVy LnNlY29uZHM7CisJfQorCisgICAgLy8gY2xvc2Ugd3JpdGUtc3RyZWFtIHRvIGF0ZGF0YSBmaWxl CisgICAgcmV0dXJuIGlibG9jazsKK30KKwordm9pZCBoaW1kX3dyaXRlbXAzKHN0cnVjdCBoaW1k ICAqaCwgY29uc3QgY2hhciAqZmlsZXBhdGgpCit7CisgICAgc3RydWN0IGhpbWRlcnJpbmZvIHN0 YXR1czsKKyAgICBnaW50IG5ibG9ja3M9MCwgbmZyYW1lcz0wOworICAgIHN0cnVjdCBtYWRfc3Ry ZWFtIHN0cmVhbTsKKyAgICBtYWRfdGltZXJfdCBkdXJhdGlvbjsKKyAgICBHTWFwcGVkRmlsZSAq IG1wM2ZpbGU7CisgICAgdW5zaWduZWQgbG9uZyBtcDNzaXplOworICAgIGdjaGFyICogbXAzYnVm ZmVyOworICAgIGdjaGFyICogYXJ0aXN0PU5VTEwsICogdGl0bGU9TlVMTCwgKiBhbGJ1bT1OVUxM OworICAgIGludCBpOworICAgIHVuc2lnbmVkIGNoYXIgY2lkWzIwXSA9IHsweDAyLCAweDAzLCAw eDAwLCAweDAwfTsKKworICAgIC8vIEdlbmVyYXRlIHJhbmRvbSBjb250ZW50IElECisgICAgZm9y KGkgPSA0OyBpIDw9MTk7IGkrKykKKyAgICAgICAgY2lkW2ldID0gZ19yYW5kb21faW50X3Jhbmdl KDAsMHhGRik7CisKKyAgICAvLyBHZXQgdHJhY2sgSUQzIGluZm9ybWF0aW9uCisgICAgZ2V0X3Nv bmdpbmZvKGZpbGVwYXRoLCAmYXJ0aXN0LCAmdGl0bGUsICZhbGJ1bSk7CisKKyAgICAvLyBMb2Fk IG1wMyBzdHJlYW0KKyAgICBtcDNmaWxlICAgPSBnX21hcHBlZF9maWxlX25ldyhmaWxlcGF0aCwg RkFMU0UsIE5VTEwpOworICAgIG1wM3NpemUgICA9IGdfbWFwcGVkX2ZpbGVfZ2V0X2xlbmd0aCht cDNmaWxlKTsKKyAgICBtcDNidWZmZXIgPSBnX21hcHBlZF9maWxlX2dldF9jb250ZW50cyhtcDNm aWxlKTsKKworICAgIG1hZF9zdHJlYW1faW5pdCgmc3RyZWFtKTsKKyAgICBtYWRfc3RyZWFtX2J1 ZmZlcigmc3RyZWFtLCAodW5zaWduZWQgY2hhciopbXAzYnVmZmVyLCBtcDNzaXplKTsKKworICAg IC8vCisgICAgLy8gR2V0IHRyYWNrLWtleSB1c2luZyB0cmFjay1pbmRleAorICAgIC8vCisgICAg Z2ludCBpZHhfdHJhY2s7CisgICAgbXAza2V5IGtleTsKKyAgICBpZHhfdHJhY2sgPSBoaW1kX2dl dF9mcmVlX3RyYWNraW5kZXgoaCk7CisKKyAgICBpZihoaW1kX29idGFpbl9tcDNrZXkoaCwgaWR4 X3RyYWNrLCAma2V5LCAmc3RhdHVzKSA8IDApCisJeworCSAgICBwcmludGYoIkNhbm5vdCBvYnRh aW4gbXAza2V5XG4iKTsKKwkgICAgZXhpdCgxKTsKKwl9CisgICAgLy8gRU5EOiBHZXQgdHJhY2st a2V5CisKKyAgICAvLworICAgIC8vIFdyaXRlIGJsb2NrcyB0byBBVERBVEEKKyAgICAvLworICAg IHN0cnVjdCBoaW1kX3dyaXRlc3RyZWFtIHdyaXRlX3N0cmVhbTsKKyAgICB1bnNpZ25lZCBpbnQg Zmlyc3RfYmxvY2tubz0wOworICAgIHVuc2lnbmVkIGludCBsYXN0X2Jsb2Nrbm89MDsKKworICAg IGlmKGhpbWRfd3JpdGVzdHJlYW1fb3BlbihoLCAmd3JpdGVfc3RyZWFtLCAmZmlyc3RfYmxvY2tu bywgJmxhc3RfYmxvY2tubywgJnN0YXR1cykgPCAwKQorCXsKKwkgICAgZnByaW50ZihzdGRlcnIs ICJFcnJvciBvcGVuaW5nIHdyaXRlc3RyZWFtXG4iKTsKKwkgICAgZXhpdCgxKTsKKwl9CisKKyAg ICB3cml0ZV9ibG9ja3MoJnN0cmVhbSwgJndyaXRlX3N0cmVhbSwga2V5LCAmZHVyYXRpb24sICZu YmxvY2tzLCAmbmZyYW1lcywgY2lkLCAmc3RhdHVzKTsKKworICAgIGhpbWRfd3JpdGVzdHJlYW1f Y2xvc2UoJndyaXRlX3N0cmVhbSk7CisgICAgLy8gRU5EOiBXcml0ZSBibG9ja3MgdG8gQVREQVRB CisKKyAgICAvLworICAgIC8vIENhbGN1bGF0ZSBibG9ja251bWJlciBvZiB0aGUgbGFzdCB3cml0 dGVuIGJsb2NrCisgICAgLy8KKyAgICBsYXN0X2Jsb2Nrbm8gPSBmaXJzdF9ibG9ja25vICsgbmJs b2Nrcy0xOworCisgICAgLy8KKyAgICAvLyBBZGQgZnJhZ21lbnQgZGVzY3JpcHRvciwgZ2V0IGJh Y2sgZnJhZ21lbnQgbnVtYmVyCisgICAgLy8KKyAgICBzdHJ1Y3QgZnJhZ2luZm8gZnJhZ21lbnQ7 CisgICAgZ2ludCBpZHhfZnJhZzsKKworICAgIGZyYWdtZW50LmZpcnN0YmxvY2sgPSBmaXJzdF9i bG9ja25vOworICAgIGZyYWdtZW50Lmxhc3RibG9jayAgPSBsYXN0X2Jsb2Nrbm87CisgICAgbWVt c2V0KCZmcmFnbWVudC5rZXlbMF0sIDAsIDgpOworICAgIGZyYWdtZW50LmZpcnN0ZnJhbWUgPSAw OworICAgIGZyYWdtZW50Lmxhc3RmcmFtZSAgPSBuZnJhbWVzOworICAgIGZyYWdtZW50LmZyYWd0 eXBlICAgPSAxOworICAgIGZyYWdtZW50Lm5leHRmcmFnICAgPSAwOworCisgICAgaWR4X2ZyYWcg ID0gaGltZF9hZGRfZnJhZ21lbnRfaW5mbyhoLCAmZnJhZ21lbnQsICZzdGF0dXMpOworICAgIC8v IEVORDogQWRkIGZyYWdtZW50CisKKyAgICAvLyBBZGQgc3RyaW5ncyBmb3IgdGl0bGUsIGFsYnVt IGFuZCBhcnRpc3Qgc3RyaW5ncy4gUmV0cmlldmUgc3RyaW5nIGluZGV4IG51bWJlcnMuCisgICAg Z2ludCBpZHhfdGl0bGU9MCwgaWR4X2FsYnVtPTAsIGlkeF9hcnRpc3Q9MDsKKworICAgIGlmKHRp dGxlICE9IE5VTEwpIHsKKwlpZHhfdGl0bGUgID0gaGltZF9hZGRfc3RyaW5nKGgsIHRpdGxlLCBT VFJJTkdfVFlQRV9USVRMRSwgc3RybGVuKHRpdGxlKSsxLCAmc3RhdHVzKTsKKwlpZihpZHhfdGl0 bGUgPCAwKQorCSAgICB7CisJCXByaW50ZigiRmFpbGVkIHRvIGFkZCB0aXRsZSBzdHJpbmdcbiIp OworCQlleGl0KDEpOworCSAgICB9CisgICAgfQorCisgICAgaWYoYWxidW0gIT0gTlVMTCkgewor CXByaW50ZigiaGVsbG9cbiIpOworCWlkeF9hbGJ1bSAgPSBoaW1kX2FkZF9zdHJpbmcoaCwgYWxi dW0sIFNUUklOR19UWVBFX0FMQlVNLCAgIHN0cmxlbihhbGJ1bSkrMSwgJnN0YXR1cyk7CisJaWYo aWR4X2FsYnVtIDwgMCkKKwkgICAgeworCQlwcmludGYoIkZhaWxlZCB0byBhZGQgYWxidW0gc3Ry aW5nXG4iKTsKKwkJZXhpdCgxKTsKKwkgICAgfQorICAgIH0KKworICAgIGlmKGFydGlzdCAhPSBO VUxMKSB7CisJaWR4X2FydGlzdCA9IGhpbWRfYWRkX3N0cmluZyhoLCBhcnRpc3QsIFNUUklOR19U WVBFX0FSVElTVCwgc3RybGVuKGFydGlzdCkrMSwgJnN0YXR1cyk7CisJaWYoaWR4X2FydGlzdCA8 IDApCisJICAgIHsKKwkJcHJpbnRmKCJGYWlsZWQgdG8gYWRkIGFydGlzdCBzdHJpbmdcbiIpOwor CQlleGl0KDEpOworCSAgICB9CisgICAgfQorICAgIC8vICAgIHByaW50ZigiREJHOiBpZHhfdGl0 bGU6ICVkLCBpZHhfYWxidW06ICVkLCBpZHhfYXJ0aXN0OiAlZFxuIiwgaWR4X3RpdGxlLCBpZHhf YWxidW0sIGlkeF9hcnRpc3QpOworICAgIC8vIEVORDogQWRkIHN0cmluZ3MKKworICAgIC8vCisg ICAgLy8gQWRkIHRyYWNrIGRlc2NyaXB0b3IsIGdldCB0cmFja25vIGJhY2suCisgICAgLy8KKyAg ICBzdHJ1Y3QgdHJhY2tpbmZvIHRyYWNrOworCisgICAgbWVtc2V0KCZ0cmFjay5rZXksIDAsIDgp OworICAgIHRyYWNrLnRpdGxlICA9IGlkeF90aXRsZTsKKyAgICB0cmFjay5hcnRpc3QgPSBpZHhf YXJ0aXN0OworICAgIHRyYWNrLmFsYnVtICA9IGlkeF9hbGJ1bTsKKyAgICB0cmFjay5maXJzdGZy YWcgICAgPSBpZHhfZnJhZzsKKyAgICB0cmFjay50cmFja251bSAgICAgPSAxOworICAgIHRyYWNr LmVrYm51bSAgICAgICA9IDA7CisgICAgdHJhY2sudHJhY2tpbmFsYnVtID0gMTsKKyAgICB0cmFj ay5jb2RlY19pZCAgICAgPSBDT0RFQ19BVFJBQzNQTFVTX09SX01QRUc7CisgICAgdHJhY2suc2Vj b25kcyAgICAgID0gZHVyYXRpb24uc2Vjb25kczsKKyAgICBtZW1zZXQoJnRyYWNrLmNvZGVjaW5m bywgMCwgNSk7CisgICAgdHJhY2suY29kZWNpbmZvWzBdID0gMzsKKworICAgIC8qIGZpbGUgZGVw ZW5kZW50IGNvZGVjIGluZm9ybWF0aW9uLCB0aGVzZSB2YWx1ZXMgYXJlIGZvciBteSB0ZXN0IG1w MyBmaWxlIG9ubHksICovCisgICAgLyogdmFsdWVzIGZldGNoZWQgZnJvbSB0cmtpZHggZmlsZSBi eSBkb3dubG9hZGluZyB0aGUgc2FtZSBtcDMgZmlsZSB3aXRoIFNvbmljU3RhZ2UgKi8KKyAgICB0 cmFjay5jb2RlY2luZm9bMl0gPSAweEIwOworICAgIHRyYWNrLmNvZGVjaW5mb1szXSA9IDB4RDk7 CisgICAgdHJhY2suY29kZWNpbmZvWzRdID0gMHgxMDsKKworICAgIG1lbXNldCgmdHJhY2subWFj LCAwLCA4KTsKKyAgICBtZW1jcHkoJnRyYWNrLmNvbnRlbnRpZCwgY2lkLCAyMCk7CisgICAgbWVt c2V0KCZ0cmFjay5yZWNvcmRpbmd0aW1lLCAwLCBzaXplb2Yoc3RydWN0IHRtKSk7CisgICAgbWVt c2V0KCZ0cmFjay5zdGFydHRpbWUsICAgICAwLCBzaXplb2Yoc3RydWN0IHRtKSk7CisgICAgbWVt c2V0KCZ0cmFjay5lbmR0aW1lLCAgICAgICAwLCBzaXplb2Yoc3RydWN0IHRtKSk7CisKKyAgICAv KiBzZXQgRFJNIHN0dWZmIGNvcnJlY3RseSBmb3Iga29tcGF0aWJpbGl0eSByZWFzb25zICovCisg ICAgdHJhY2suTHQgPSAweDEwOworICAgIHRyYWNrLkRlc3QgPSAxOworICAgIHRyYWNrLlhjYyA9 IDE7CisgICAgdHJhY2suQ2MgPSAweDQwOworCisgICAgaWR4X3RyYWNrID0gaGltZF9hZGRfdHJh Y2tfaW5mbyhoLCAmdHJhY2ssICZzdGF0dXMpOworICAgIC8vIEVORDogQWRkIHRyYWNrIGRlc2Ny aXB0b3IKKworICAgIC8vCisgICAgLy8gVXBkYXRlIFRSQUNLLUlOREVYIGZpbGUgd2l0aCB0cmFj ayBzdHJpbmdzLCBmcmFnbWVudCBkZXNjcmlwdG9yIGFuZCB0cmFjay1kZXNjcmlwdG9yLgorICAg IC8vCisgICAgaGltZF93cml0ZV90aWZkYXRhKGgsICZzdGF0dXMpOworICAgIC8vICAgIGZyZWUo YXJ0aXN0KTsgZnJlZShhbGJ1bSk7IGZyZWUodGl0bGUpOworfQorCiBpbnQgbWFpbihpbnQgYXJn YywgY2hhciAqKiBhcmd2KQogewogICAgIGludCBpZHg7CkBAIC0zODIsNiArODY0LDEwIEBAIGlu dCBtYWluKGludCBhcmdjLCBjaGFyICoqIGFyZ3YpCiAgICAgICAgIHNzY2FuZihhcmd2WzNdLCAi JWQiLCAmaWR4KTsKICAgICAgICAgaGltZF9kdW1wbm9ubXAzKCZoLCBpZHgpOwogICAgIH0KKyAg ICBlbHNlIGlmKHN0cmNtcChhcmd2WzJdLCJ3cml0ZW1wMyIpID09IDAgJiYgYXJnYyA+IDMpCisg ICAgeworCWhpbWRfd3JpdGVtcDMoJmgsIGFyZ3ZbM10pOworICAgIH0KIAogICAgIGhpbWRfY2xv c2UoJmgpOwogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvaGltZGR1bXAvaGltZGR1bXAucHJv IGIvaGltZGR1bXAvaGltZGR1bXAucHJvCmluZGV4IGU1MTQ2M2YuLjA3MzY0MTMgMTAwNjQ0Ci0t LSBhL2hpbWRkdW1wL2hpbWRkdW1wLnBybworKysgYi9oaW1kZHVtcC9oaW1kZHVtcC5wcm8KQEAg LTEsNyArMSw4IEBACiBURU1QTEFURT1hcHAKIENPTkZJRyAgLT0gcXQKIENPTkZJRyAgKz0gY29u c29sZSBsaW5rX3BrZ2NvbmZpZyBsaW5rX3BybAotUEtHQ09ORklHICs9IGdsaWItMi4wCitQS0dD T05GSUcgKz0gZ2xpYi0yLjAgaWQzdGFnCit3aW4zMjpMSUJTICs9IC1saWQzdGFnIC1segogSU5D TFVERVBBVEggKz0gLi4vbGliaGltZAogU09VUkNFUyArPSBoaW1kZHVtcC5jCiAKZGlmZiAtLWdp dCBhL2xpYmhpbWQvaGltZC5jIGIvbGliaGltZC9oaW1kLmMKaW5kZXggM2U5YzcyYy4uN2RmZjgz NSAxMDA2NDQKLS0tIGEvbGliaGltZC9oaW1kLmMKKysrIGIvbGliaGltZC9oaW1kLmMKQEAgLTYs OCArNiw5IEBACiAKICNkZWZpbmUgR19MT0dfRE9NQUlOICJIaU1EIgogI2luY2x1ZGUgPGdsaWIu aD4KKyNpbmNsdWRlIDxnbGliL2dzdGRpby5oPgogI2luY2x1ZGUgPGdsaWIvZ3ByaW50Zi5oPgot CisjaW5jbHVkZSA8Z2xpYi9nZmlsZXV0aWxzLmg+CiAjaW5jbHVkZSAiaGltZC5oIgogCiAjZGVm aW5lIF8oeCkgKHgpCkBAIC01Nyw2ICs1OCw0NiBAQCBzdGF0aWMgaW50IHNjYW5mb3JhdGRhdGEo R0RpciAqIGRpcikKICAgICByZXR1cm4gbWF4ZGF0YW51bTsKIH0KIAorCisvLyBzY2FuIGZvciBU UktJRFggZmlsZXMKK3N0YXRpYyBpbnQgc2NhbmZvcnRpZihHRGlyICogZGlyLCBpbnQqIG9sZG51 bSwgaW50ICpuZXdudW0pCit7CisgICAgY29uc3QgY2hhciAqIGhtYWZpbGU7CisgICAgaW50IGZv dW5kX2JsYW5rPUZBTFNFLCBmb3VuZF91bnVzZWQ9RkFMU0UsIGZvdW5kX3VzZWQ9RkFMU0U7Cisg ICAgaW50IG9sZF9kYXRhbnVtLCBuZXdfZGF0YW51bTsKKworICAgIHdoaWxlKChobWFmaWxlID0g Z19kaXJfcmVhZF9uYW1lKGRpcikpICE9IE5VTEwpCisgICAgeworCS8vIExvb2sgZm9yIG9sZCB2 ZXJzaW9uCisJaWYoIWZvdW5kX3VudXNlZCkKKwkgICAgeworCQlpZihnX2FzY2lpX3N0cm5jYXNl Y21wKGhtYWZpbGUsIl9ya2lkeDAiLDcpID09IDAgJiYKKwkJICAgc3RybGVuKGhtYWZpbGUpID09 IDEyICYmCisJCSAgIGlzeGRpZ2l0KGhtYWZpbGVbN10pICYmCisJCSAgIGdfYXNjaWlfc3RybmNh c2VjbXAoaG1hZmlsZSs4LCIuaG1hIiw0KSA9PSAwKQorCQkgICAgeworCQkJc3NjYW5mKGhtYWZp bGUrNywiJXgiLCZvbGRfZGF0YW51bSk7CisJCQkqb2xkbnVtID0gb2xkX2RhdGFudW07CisJCQlm b3VuZF91bnVzZWQgPSBUUlVFOworCQkgICAgfQorCSAgICB9CisJLy8gTG9vayBmb3IgY3VycmVu dCB2ZXJzaW9uCisJaWYoIWZvdW5kX3VzZWQpCisJICAgIHsKKwkJaWYoZ19hc2NpaV9zdHJuY2Fz ZWNtcChobWFmaWxlLCJ0cmtpZHgwIiw3KSA9PSAwICYmCisJCSAgIHN0cmxlbihobWFmaWxlKSA9 PSAxMiAmJgorCQkgICBpc3hkaWdpdChobWFmaWxlWzddKSAmJgorCQkgICBnX2FzY2lpX3N0cm5j YXNlY21wKGhtYWZpbGUrOCwiLmhtYSIsNCkgPT0gMCkKKwkJICAgIHsKKwkJCXNzY2FuZihobWFm aWxlKzcsIiV4IiwmbmV3X2RhdGFudW0pOworCQkJKm5ld251bSA9IG5ld19kYXRhbnVtOworCQkJ Zm91bmRfdXNlZCA9IFRSVUU7CisJCSAgICB9CisJICAgIH0KKyAgICB9CisgICAgcmV0dXJuIChG QUxTRSB8fCBmb3VuZF91bnVzZWQgfHwgZm91bmRfdXNlZCk7Cit9CisKIHN0YXRpYyB2b2lkIG5v bmdfaW5wbGFjZV9hc2NpaV9kb3duKGdjaGFyICogc3RyaW5nKQogewogICAgIHdoaWxlKCpzdHJp bmcpCkBAIC04NywxMSArMTI4LDc5IEBAIEZJTEUgKiBoaW1kX29wZW5fZmlsZShzdHJ1Y3QgaGlt ZCAqIGhpbWQsIGNvbnN0IGNoYXIgKiBmaWxlaWQpCiAgICAgZWxzZQogICAgICAgICBub25nX2lu cGxhY2VfYXNjaWlfdXAoZmlsZW5hbWUpOwogICAgIGZpbGVwYXRoID0gZ19idWlsZF9maWxlbmFt ZShoaW1kLT5yb290cGF0aCxoaW1kLT5uZWVkX2xvd2VyY2FzZSA/ICJobWRoaWZpIiA6ICJITURI SUZJIixmaWxlbmFtZSxOVUxMKTsKLSAgICBmaWxlID0gZm9wZW4oZmlsZXBhdGgsInJiIik7Cisg ICAgZmlsZSA9IGZvcGVuKGZpbGVwYXRoLCJyYisiKTsKICAgICBnX2ZyZWUoZmlsZXBhdGgpOwog ICAgIHJldHVybiBmaWxlOwogfQogCisKK2ludCBoaW1kX3dyaXRlX3RpZmRhdGEoc3RydWN0IGhp bWQgKiBoaW1kLCBzdHJ1Y3QgaGltZGVycmluZm8gKiBzdGF0dXMpCit7CisgICAgY2hhciBpbmRl eGZpbGVuYW1lWzEzXSwgYXRkYXRhZmlsZW5hbWVbMTNdOworICAgIGdjaGFyICp1bnVzZWRmaWxl LCp1c2VkZmlsZSwqdGVtcGZpbGUsKmF0ZGF0YTsKKyAgICBnY2hhciAqZmlsZXBhdGg7CisgICAg R0RpciAqIGRpcjsKKyAgICBHRXJyb3IgKiBlcnJvciA9IE5VTEw7CisgICAgc3RhdHVzID0gc3Rh dHVzOworCisgICAgZmlsZXBhdGggPSBnX2J1aWxkX2ZpbGVuYW1lKGhpbWQtPnJvb3RwYXRoLGhp bWQtPm5lZWRfbG93ZXJjYXNlID8gImhtZGhpZmkiIDogIkhNREhJRkkiLCBOVUxMKTsKKyAgICBk aXIgICAgICA9IGdfZGlyX29wZW4oZmlsZXBhdGgsMCwmZXJyb3IpOworICAgIGludCBvbGRudW09 MCwgbmV3bnVtPTA7CisKKyAgICBpZihzY2FuZm9ydGlmKGRpciwgJm9sZG51bSwgJm5ld251bSkp CisJeworCSAgICBzcHJpbnRmKGluZGV4ZmlsZW5hbWUsIGhpbWQtPm5lZWRfbG93ZXJjYXNlID8g Il9ya2lkeCUwMnguaG1hIiA6ICJfUktJRFglMDJYLkhNQSIsIG9sZG51bSk7CisJICAgIHVudXNl ZGZpbGUgPSBnX2J1aWxkX2ZpbGVuYW1lKGhpbWQtPnJvb3RwYXRoLGhpbWQtPm5lZWRfbG93ZXJj YXNlID8gImhtZGhpZmkiIDogIkhNREhJRkkiLAorCQkJCQkgIGluZGV4ZmlsZW5hbWUsTlVMTCk7 CisJICAgIHNwcmludGYoaW5kZXhmaWxlbmFtZSwgaGltZC0+bmVlZF9sb3dlcmNhc2UgPyAidHJr aWR4JTAyeC5obWEiIDogIlRSS0lEWCUwMlguSE1BIiwgbmV3bnVtKTsKKwkgICAgdXNlZGZpbGUg PSBnX2J1aWxkX2ZpbGVuYW1lKGhpbWQtPnJvb3RwYXRoLGhpbWQtPm5lZWRfbG93ZXJjYXNlID8g ImhtZGhpZmkiIDogIkhNREhJRkkiLAorCQkJCQlpbmRleGZpbGVuYW1lLE5VTEwpOworCX0KKyAg ICBlbHNlCisJeworCSAgICBwcmludGYoImRpZG50IGZvdW5kIGFueSAuVElGIGZpbGVzXG4iKTsK KwkgICAgZXhpdCgxKTsKKwl9CisKKyAgICAvLyBTZXR1cCBmaWxlcGF0aHMgdG8gVFJLSURYLlRN UCwgVFJLSURYMDEuSE1BCisgICAgdGVtcGZpbGUgICAgICAgICA9IGdfYnVpbGRfZmlsZW5hbWUo aGltZC0+cm9vdHBhdGgsaGltZC0+bmVlZF9sb3dlcmNhc2UgPyAiaG1kaGlmaSIgOiAiSE1ESElG SSIsCisJCQkJCSJUUktJRFguVE1QIixOVUxMKTsKKworICAgIC8vIGF0ZGF0YVhYLmhtYQorICAg IHNwcmludGYoYXRkYXRhZmlsZW5hbWUsIGhpbWQtPm5lZWRfbG93ZXJjYXNlID8gImF0ZGF0YSUw MnguaG1hIiA6ICJBVERBVEElMDJYLkhNQSIsIGhpbWQtPmRhdGFudW0pOworICAgIGF0ZGF0YSAg ICAgICAgICAgID0gZ19idWlsZF9maWxlbmFtZShoaW1kLT5yb290cGF0aCxoaW1kLT5uZWVkX2xv d2VyY2FzZSA/ICJobWRoaWZpIiA6ICJITURISUZJIiwKKwkJCQkJIGF0ZGF0YWZpbGVuYW1lLE5V TEwpOworICAgIGlmKCFnX2ZpbGVfc2V0X2NvbnRlbnRzKHVudXNlZGZpbGUsIChjb25zdCBjaGFy KiloaW1kLT50aWZkYXRhLCBISU1EX1RJRkZJTEVfU0laRSwgJmVycm9yKSkKKwl7CisJICAgIHBy aW50ZigiQ291bGQgbm90IHVwZGF0ZSB1bnVzZWQgVElGREFUQSBmaWxlICVzLlxuIiwgdW51c2Vk ZmlsZSk7CisJICAgIGV4aXQoMSk7CisJfQorCisgICAgLy8gdW51c2VkICAgICAgICAgICAgICAg ICAtPiB0bXAKKyAgICAvLyB1c2VkICAgICAgICAgICAgICAgICAgIC0+IHVudXNlZAorICAgIC8v IHRlbXBmaWxlICAgICAgICAgICAgICAgLT4gdXNlZAorCisgICAgaWYoZ19yZW5hbWUodW51c2Vk ZmlsZSwgdGVtcGZpbGUpIDwgMCkKKwl7CisJICAgIHByaW50ZigiQ291bGQgbm90IHJlbmFtZSBi bGFuayB1bnVzZWQgJXMgdG8gJXNcbiIsIHVudXNlZGZpbGUsIHRlbXBmaWxlKTsKKwkgICAgZXhp dCgxKTsKKwl9CisgICAgaWYoZ19yZW5hbWUodXNlZGZpbGUsIHVudXNlZGZpbGUpIDwgMCkKKwl7 CisJICAgIHByaW50ZigiQ291bGQgbm90IHJlbmFtZSAlcyB0byAlc1xuIiwgdXNlZGZpbGUsIHRl bXBmaWxlKTsKKwkgICAgZXhpdCgxKTsKKwl9CisgICAgaWYoZ19yZW5hbWUodGVtcGZpbGUsIHVz ZWRmaWxlKSA8IDApCisJeworCSAgICBwcmludGYoIkNvdWxkIG5vdCByZW5hbWUgJXMgdG8gJXNc biIsIHRlbXBmaWxlLCB1c2VkZmlsZSk7CisJfQorCisgICAgZ19mcmVlKGZpbGVwYXRoKTsKKyAg ICBnX2Rpcl9jbG9zZShkaXIpOworCisgICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgaGlt ZF9yZWFkX2Rpc2NpZChzdHJ1Y3QgaGltZCAqIGhpbWQsIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0 YXR1cykKIHsKICAgICBGSUxFICogbWNsaXN0ZmlsZSA9IGhpbWRfb3Blbl9maWxlKGhpbWQsICJN Q0xJU1QiKTsKZGlmZiAtLWdpdCBhL2xpYmhpbWQvaGltZC5oIGIvbGliaGltZC9oaW1kLmgKaW5k ZXggYWUzZjZmZi4uODg3ZjRhOSAxMDA2NDQKLS0tIGEvbGliaGltZC9oaW1kLmgKKysrIGIvbGli aGltZC9oaW1kLmgKQEAgLTM1LDYgKzM1LDEwIEBAIGV4dGVybiAiQyIgewogI2RlZmluZSBISU1E X0FUUkFDM19TQU1QTEVTX1BFUl9GUkFNRSAxMDI0CiAjZGVmaW5lIEhJTURfQVRSQUMzUF9TQU1Q TEVTX1BFUl9GUkFNRSAyMDQ4CiAKKyNkZWZpbmUgSElNRF9USUZGSUxFX1NJWkUgMzI3NjgwCisj ZGVmaW5lIEhJTURfQVVESU9fU0laRSAweDNGQzAKKyNkZWZpbmUgSElNRF9CTE9DS0lORk9fU0la RSAweDQwMDAKKwogZW51bSBoaW1kc3RhdHVzIHsgSElNRF9PSywKICAgICAgICAgICAgICAgICAg IEhJTURfU1RBVFVTX0FVRElPX0VPRiwKICAgICAgICAgICAgICAgICAgIEhJTURfRVJST1JfRElT QUJMRURfRkVBVFVSRSwKQEAgLTc2LDYgKzgwLDEyIEBAIHN0cnVjdCB0cmFja2luZm8gewogICAg IHVuc2lnbmVkIGNoYXIgY29udGVudGlkWzIwXTsKICAgICBpbnQgZWtibnVtOwogICAgIHN0cnVj dCB0bSByZWNvcmRpbmd0aW1lLCBzdGFydHRpbWUsIGVuZHRpbWU7CisgICAgY2hhciBMdDsKKyAg ICBjaGFyIERlc3Q7CisgICAgY2hhciBYY2M7CisgICAgY2hhciBDdDsKKyAgICBjaGFyIENjOwor ICAgIGNoYXIgQ247CiB9OwogCiAvKiBhIGZyYWdtZW50IGluIHRoZSBhdWRpbyBmaWxlICovCkBA IC04OSw2ICs5OSwyNyBAQCBzdHJ1Y3QgZnJhZ2luZm8gewogICAgIHVuc2lnbmVkIGludCBuZXh0 ZnJhZzsKIH07CiAKKworLyogYSBibG9jayBpbiB0aGUgYXVkaW8gZmlsZSAqLworc3RydWN0IGJs b2NraW5mbyB7CisgIHVuc2lnbmVkIGludCB0eXBlOyAgICAgICAgICAJICAgICAvLyAiTFBDTSIg b3IgIkEzRCAiIG9yICJBVFgiIG9yICJTUE1BIgorICBzaG9ydCBpbnQgbmZyYW1lczsKKyAgc2hv cnQgaW50IG1jb2RlOworICBzaG9ydCBpbnQgbGVuZGF0YTsKKyAgc2hvcnQgaW50IHJlc2VydmVk MTsKKyAgdW5zaWduZWQgaW50IHNlcmlhbF9udW1iZXI7CisgIHVuc2lnbmVkIGNoYXIga2V5Wzhd OworICB1bnNpZ25lZCBjaGFyIGl2WzhdOworICB1bnNpZ25lZCBjaGFyIGF1ZGlvX2RhdGFbMHgz RkMwXTsJCS8vIG9iZnVzY2F0ZWQgYXVkaW8gZGF0YQorICB1bnNpZ25lZCBjaGFyIGJhY2t1cF9r ZXlbOF07CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWQyWzhdOworICB1bnNpZ25lZCBpbnQgYmFj a3VwX3R5cGU7CisgIHNob3J0IGludCBiYWNrdXBfcmVzZXJ2ZWQ7CisgIHNob3J0IGludCBiYWNr dXBfbWNvZGU7CisgIGludCBsbzMyX2NvbnRlbnRpZDsKKyAgaW50IGJhY2t1cF9zZXJpYWxfbnVt YmVyOworfTsKKwogc3RydWN0IGhpbWRzdHJpbmcgewogICAgIGNoYXIgZGF0YVsxNF07CiAgICAg dW5zaWduZWQgaW50IHN0cmluZ3R5cGUgOiA0OwpAQCAtMTE0LDkgKzE0NSwxMSBAQCBpbnQgaGlt ZF9vcGVuKHN0cnVjdCBoaW1kICogaGltZCwgY29uc3QgY2hhciAqIGhpbWRyb290LCBzdHJ1Y3Qg aGltZGVycmluZm8gKiBzdAogdm9pZCBoaW1kX2Nsb3NlKHN0cnVjdCBoaW1kICogaGltZCk7CiBj aGFyKiBoaW1kX2dldF9zdHJpbmdfcmF3KHN0cnVjdCBoaW1kICogaGltZCwgdW5zaWduZWQgaW50 IGlkeCwgaW50KnR5cGUsIGludCogbGVuZ3RoLCBzdHJ1Y3QgaGltZGVycmluZm8gKiBzdGF0dXMp OwogY2hhciogaGltZF9nZXRfc3RyaW5nX3V0Zjgoc3RydWN0IGhpbWQgKiBoaW1kLCB1bnNpZ25l ZCBpbnQgaWR4LCBpbnQqdHlwZSwgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKTsKK2ludCBo aW1kX2FkZF9zdHJpbmcoc3RydWN0IGhpbWQgKiBoaW1kLCBjaGFyICpzdHJpbmcsIGludCB0eXBl LCBpbnQgbGVuZ3RoLCBzdHJ1Y3QgaGltZGVycmluZm8gKiBzdGF0dXMpOwogdm9pZCBoaW1kX2Zy ZWUodm9pZCAqIHApOwogY29uc3QgdW5zaWduZWQgY2hhciAqIGhpbWRfZ2V0X2Rpc2NpZChzdHJ1 Y3QgaGltZCAqIGhpbWQsIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1cyk7CiBGSUxFICogaGlt ZF9vcGVuX2ZpbGUoc3RydWN0IGhpbWQgKiBoaW1kLCBjb25zdCBjaGFyICogZmlsZWlkKTsKK2lu dCBoaW1kX3dyaXRlX3RpZmRhdGEoc3RydWN0IGhpbWQgKiBoaW1kLCBzdHJ1Y3QgaGltZGVycmlu Zm8gKiBzdGF0dXMpOwogdW5zaWduZWQgaW50IGhpbWRfdHJhY2tfY291bnQoc3RydWN0IGhpbWQg KiBoaW1kKTsKIHVuc2lnbmVkIGludCBoaW1kX2dldF90cmFja3Nsb3Qoc3RydWN0IGhpbWQgKiBo aW1kLCBpbnQgdW5zaWduZWQgaWR4LCBzdHJ1Y3QgaGltZGVycmluZm8gKiBzdGF0dXMpOwogCkBA IC0xMjUsNiArMTU4LDEwIEBAIGludCBoaW1kX2dldF9mcmFnbWVudF9pbmZvKHN0cnVjdCBoaW1k ICogaGltZCwgdW5zaWduZWQgaW50IGlkeCwgc3RydWN0IGZyYWdpbmZvCiBpbnQgaGltZF90cmFj a191cGxvYWRhYmxlKHN0cnVjdCBoaW1kICogaGltZCwgY29uc3Qgc3RydWN0IHRyYWNraW5mbyAq IHRyYWNrKTsKIGludCBoaW1kX3RyYWNrX2Jsb2NrcyhzdHJ1Y3QgaGltZCAqIGhpbWQsIGNvbnN0 IHN0cnVjdCB0cmFja2luZm8gKiB0cmFjaywgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKTsK IAoraW50IGhpbWRfZ2V0X2ZyZWVfdHJhY2tpbmRleChzdHJ1Y3QgaGltZCAqIGhpbWQpOworaW50 IGhpbWRfYWRkX3RyYWNrX2luZm8oc3RydWN0IGhpbWQgKiBoaW1kLCBzdHJ1Y3QgdHJhY2tpbmZv ICogdHJhY2ssIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1cyk7CitpbnQgaGltZF9hZGRfZnJh Z21lbnRfaW5mbyhzdHJ1Y3QgaGltZCAqIGhpbWQsIHN0cnVjdCBmcmFnaW5mbyAqIGYsIHN0cnVj dCBoaW1kZXJyaW5mbyAqIHN0YXR1cyk7CisKIGNvbnN0IGNoYXIgKiBoaW1kX2dldF9jb2RlY19u YW1lKGNvbnN0IHN0cnVjdCB0cmFja2luZm8gKiB0KTsKIHVuc2lnbmVkIGludCBoaW1kX3RyYWNr aW5mb19mcmFtZXNpemUoY29uc3Qgc3RydWN0IHRyYWNraW5mbyAqIHRyYWNrKTsKIHVuc2lnbmVk IGludCBoaW1kX3RyYWNraW5mb19mcmFtZXNwZXJibG9jayhjb25zdCBzdHJ1Y3QgdHJhY2tpbmZv ICogdHJhY2spOwpAQCAtMTUzLDYgKzE5MCwxOSBAQCBpbnQgaGltZF9ibG9ja3N0cmVhbV9yZWFk KHN0cnVjdCBoaW1kX2Jsb2Nrc3RyZWFtICogc3RyZWFtLCB1bnNpZ25lZCBjaGFyICogYmxvYwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqIGZpcnN0ZnJhbWUsIHVu c2lnbmVkIGludCAqIGxhc3RmcmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBjaGFyICogZnJhZ2tleSwgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKTsKIAorCitz dHJ1Y3QgaGltZF93cml0ZXN0cmVhbSB7CisgICAgc3RydWN0IGhpbWQgKiBoaW1kOworICAgIEZJ TEUgKiBhdGRhdGE7CisgICAgdW5zaWduZWQgaW50IGN1cmJsb2Nrbm87Cit9OworCitpbnQgaGlt ZF93cml0ZXN0cmVhbV9vcGVuKHN0cnVjdCBoaW1kICogaGltZCwgc3RydWN0IGhpbWRfd3JpdGVz dHJlYW0gKiBzdHJlYW0sICB1bnNpZ25lZCBpbnQgKiBvdXRfZmlyc3RfYmxvY2tubywgdW5zaWdu ZWQgaW50ICogb3V0X2xhc3RfYmxvY2tubywgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKTsK KworaW50IGhpbWRfd3JpdGVzdHJlYW1fd3JpdGUoc3RydWN0IGhpbWRfd3JpdGVzdHJlYW0gKiBz dHJlYW0sIHN0cnVjdCBibG9ja2luZm8gKmJsb2NrLCBzdHJ1Y3QgaGltZGVycmluZm8gKiBzdGF0 dXMpOwordm9pZCBoaW1kX3dyaXRlc3RyZWFtX2Nsb3NlKHN0cnVjdCBoaW1kX3dyaXRlc3RyZWFt ICogc3RyZWFtKTsKKworCiBzdHJ1Y3QgaGltZF9tcDNzdHJlYW0gewogICAgIHN0cnVjdCBoaW1k X2Jsb2Nrc3RyZWFtIHN0cmVhbTsKICAgICB1bnNpZ25lZCBjaGFyIGJsb2NrYnVmWzE2Mzg0XTsK ZGlmZiAtLWdpdCBhL2xpYmhpbWQvaGltZF9wcml2YXRlLmggYi9saWJoaW1kL2hpbWRfcHJpdmF0 ZS5oCmluZGV4IDk4OTdhZWMuLjZmMzgwNTkgMTAwNjQ0Ci0tLSBhL2xpYmhpbWQvaGltZF9wcml2 YXRlLmgKKysrIGIvbGliaGltZC9oaW1kX3ByaXZhdGUuaApAQCAtOCw2ICs4LDIxIEBAIHN0YXRp YyBpbmxpbmUgdW5zaWduZWQgaW50IGJld29yZDMyKGNvbnN0IHVuc2lnbmVkIGNoYXIgKiBjKQog ICAgIHJldHVybiBjWzBdKjE2Nzc3MjE2K2NbMV0qNjU1MzYrY1syXSoyNTYrY1szXTsKIH0KIAor CitzdGF0aWMgaW5saW5lIHZvaWQgc2V0YmV3b3JkMTYodW5zaWduZWQgY2hhciAqIGMsIHVuc2ln bmVkIGludCB2YWwpCit7CisgICAgY1swXSA9IHZhbCA+PiA4OworICAgIGNbMV0gPSB2YWwgJiAw eEZGOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQgc2V0YmV3b3JkMzIodW5zaWduZWQgY2hhciAq IGMsIHVuc2lnbmVkIGludCB2YWwpCit7CisgICAgY1swXSA9ICh2YWwgPj4gMjQpICYgMHhGRjsK KyAgICBjWzFdID0gKHZhbCA+PiAxNikgJiAweEZGOworICAgIGNbMl0gPSAodmFsID4+IDgpICAm IDB4RkY7CisgICAgY1szXSA9ICB2YWwgICAgICAgICYgMHhGRjsKK30KKwogdm9pZCBzZXRfc3Rh dHVzX2NvbnN0KHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1cywgZW51bSBoaW1kc3RhdHVzIGNv ZGUsIGNvbnN0IGNoYXIgKiBtc2cpOwogdm9pZCBzZXRfc3RhdHVzX3ByaW50ZihzdHJ1Y3QgaGlt ZGVycmluZm8gKiBzdGF0dXMsIGVudW0gaGltZHN0YXR1cyBjb2RlLCBjb25zdCBjaGFyICogZm9y bWF0LCAuLi4pOwogCmRpZmYgLS1naXQgYS9saWJoaW1kL21kc3RyZWFtLmMgYi9saWJoaW1kL21k c3RyZWFtLmMKaW5kZXggY2ZhN2E5NS4uODYxMTJkZSAxMDA2NDQKLS0tIGEvbGliaGltZC9tZHN0 cmVhbS5jCisrKyBiL2xpYmhpbWQvbWRzdHJlYW0uYwpAQCAtMTUxLDYgKzE1MSw5NyBAQCBpbnQg aGltZF9ibG9ja3N0cmVhbV9yZWFkKHN0cnVjdCBoaW1kX2Jsb2Nrc3RyZWFtICogc3RyZWFtLCB1 bnNpZ25lZCBjaGFyICogYmxvYwogICAgIHJldHVybiAwOwogfQogCitpbnQgaGltZF93cml0ZXN0 cmVhbV9vcGVuKHN0cnVjdCBoaW1kICogaGltZCwgc3RydWN0IGhpbWRfd3JpdGVzdHJlYW0gKiBz dHJlYW0sCisJCSAgICAgICB1bnNpZ25lZCBpbnQgKiBvdXRfZmlyc3RfYmxvY2tubywgdW5zaWdu ZWQgaW50ICogb3V0X2xhc3RfYmxvY2tubywgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKQor eworICAgIHN0cnVjdCBoaW1kX2hvbGVsaXN0IGhvbGVfbGlzdDsKKyAgICBpbnQgZmlyc3RibG9j aywgbGFzdGJsb2NrPTA7CisgICAgaW50IGJsb2NrX29mZnNldD0wOworCisgICAgZ19yZXR1cm5f dmFsX2lmX2ZhaWwoaGltZCAhPSBOVUxMLCAtMSk7CisgICAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwo c3RyZWFtICE9IE5VTEwsIC0xKTsKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChzdGF0dXMgIT0g TlVMTCwgLTEpOworCisgICAgc3RyZWFtLT5oaW1kID0gaGltZDsKKyAgICBzdHJlYW0tPmF0ZGF0 YSA9IGhpbWRfb3Blbl9maWxlKGhpbWQsICJBVERBVEEiKTsKKyAgICBpZighc3RyZWFtLT5hdGRh dGEpCisJeworCSAgICBmcHJpbnRmKHN0ZGVyciwgIkludmFsaWQgZmlsZWhhbmRsZSAlZCIsIHN0 cmVhbS0+YXRkYXRhKTsKKwkgICAgcGVycm9yKCJEQkc6IGNhbm5vdCBvcGVuIEFUREFUQSBmaWxl IGZvciB3cml0aW5nXG4iKTsKKwkgICAgcmV0dXJuIC0xOworCX0KKworICAgIC8vIGhpbWRfZmlu ZF9ob2xlcworICAgIGlmKCBoaW1kX2ZpbmRfaG9sZXMoc3RyZWFtLT5oaW1kLCAmaG9sZV9saXN0 LCBzdGF0dXMpIDwgMCkKKwl7CisJICAgIHB1dHMoc3RhdHVzLT5zdGF0dXNtc2cpOworCSAgICBl eGl0KDEpOworCX0KKworICAgIC8vIGdldCBwb2ludGVyIHRvIGZyZWVzcGFjZQorICAgIGZpcnN0 YmxvY2sgICA9ICBob2xlX2xpc3QuaG9sZXNbMF0uZmlyc3RibG9jazsKKyAgICBsYXN0YmxvY2sg ICAgPSAgaG9sZV9saXN0LmhvbGVzWzBdLmxhc3RibG9jazsKKyAgICBibG9ja19vZmZzZXQgPSBm aXJzdGJsb2NrICogSElNRF9CTE9DS0lORk9fU0laRTsKKworICAgIC8vIHNldCBwb3NpdGlvbiB3 aGVyZSB0byBzdGFydCB3cml0aW5nIGJsb2NrcworICAgIGlmKGZzZWVrKHN0cmVhbS0+YXRkYXRh LCBibG9ja19vZmZzZXQsIFNFRUtfU0VUKSAhPSAwKQorCXsKKwkgICAgZnByaW50ZihzdGRlcnIs ICJFcnJvciBmc2Vla2luZyBhdGRhdGFcbiIpOworCX0KKyAgICBzdHJlYW0tPmN1cmJsb2Nrbm8g PSBmaXJzdGJsb2NrOworCisgICAgaWYoIChvdXRfZmlyc3RfYmxvY2tubyAhPSBOVUxMKSAmJiAo b3V0X2xhc3RfYmxvY2tubyAhPSBOVUxMKSApCisJeworCSAgICAqb3V0X2ZpcnN0X2Jsb2Nrbm8g PSBmaXJzdGJsb2NrOworCSAgICAqb3V0X2xhc3RfYmxvY2tubyA9IGxhc3RibG9jazsKKwl9CisK KyAgICByZXR1cm4gMDsKK30KKwordm9pZCBoaW1kX3dyaXRlc3RyZWFtX2Nsb3NlKHN0cnVjdCBo aW1kX3dyaXRlc3RyZWFtICogc3RyZWFtKQoreworICAgIGZjbG9zZShzdHJlYW0tPmF0ZGF0YSk7 Cit9CisKK3N0YXRpYyB2b2lkIHNldGJsb2NrKHN0cnVjdCBibG9ja2luZm8gKiBiLCB1bnNpZ25l ZCBjaGFyICogYmxvY2tidWZmZXIpCit7CisgICAgbWVtc2V0KGJsb2NrYnVmZmVyLCAwLCBISU1E X0JMT0NLSU5GT19TSVpFKTsKKyAgICBzdHJuY3B5KChjaGFyKilibG9ja2J1ZmZlciwgIlNQTUEi LCBzaXplb2YodW5zaWduZWQgaW50KSk7CisgICAgc2V0YmV3b3JkMTYoYmxvY2tidWZmZXIrNCwg Yi0+bmZyYW1lcyk7CisgICAgc2V0YmV3b3JkMTYoYmxvY2tidWZmZXIrNiwgYi0+bWNvZGUpOwor ICAgIHNldGJld29yZDE2KGJsb2NrYnVmZmVyKzgsIGItPmxlbmRhdGEpOworICAgIHNldGJld29y ZDMyKGJsb2NrYnVmZmVyKzEyLCBiLT5zZXJpYWxfbnVtYmVyKTsKKyAgICBtZW1jcHkoYmxvY2ti dWZmZXIrMTYsICZiLT5rZXksIDgpOworICAgIG1lbWNweShibG9ja2J1ZmZlcisyNCwgJmItPml2 LCA4KTsKKyAgICBtZW1jcHkoYmxvY2tidWZmZXIrMzIsICZiLT5hdWRpb19kYXRhLCBISU1EX0FV RElPX1NJWkUpOworICAgIHN0cm5jcHkoKGNoYXIqKWJsb2NrYnVmZmVyKzE2MzY4LCAiU1BNQSIs IHNpemVvZih1bnNpZ25lZCBpbnQpKTsKKyAgICBzZXRiZXdvcmQxNihibG9ja2J1ZmZlcisxNjM3 NCwgYi0+bWNvZGUpOworICAgIHNldGJld29yZDMyKGJsb2NrYnVmZmVyKzE2Mzc2LCBiLT5sbzMy X2NvbnRlbnRpZCk7CisgICAgc2V0YmV3b3JkMzIoYmxvY2tidWZmZXIrMTYzODAsIGItPnNlcmlh bF9udW1iZXIpOworfQorCitpbnQgaGltZF93cml0ZXN0cmVhbV93cml0ZShzdHJ1Y3QgaGltZF93 cml0ZXN0cmVhbSAqIHN0cmVhbSwgc3RydWN0IGJsb2NraW5mbyAqIGF1ZGlvYmxvY2ssIHN0cnVj dCBoaW1kZXJyaW5mbyAqc3RhdHVzKQoreworICAgIHVuc2lnbmVkIGNoYXIgZGF0YVtISU1EX0JM T0NLSU5GT19TSVpFXTsKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChzdHJlYW0gIT0gTlVMTCwg LTEpOworICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKGF1ZGlvYmxvY2sgIT0gTlVMTCwgLTEpOwor ICAgIHN0YXR1cyA9IHN0YXR1czsKKyAgICBzdHJlYW0gPSBzdHJlYW07CisKKyAgICAvLyBzZXJp YWxpemUgdGhlIGJsb2NrIGRlc2NyaXB0b3IKKyAgICBzZXRibG9jayhhdWRpb2Jsb2NrLCBkYXRh KTsKKworICAgIC8vIHdyaXRlIHRoZSBibG9jayBkZXNjcmlwdG9yIHRvIHRoZSBjdXJyZW50IHBv c2l0aW9uIGluIHRoZSBzdHJlYW0gYXQgJ3N0cmVhbS0+Y3VyYmxvY2tubycKKyAgICBpZihmd3Jp dGUoZGF0YSwgMTYzODQsIDEsIHN0cmVhbS0+YXRkYXRhKSAhPSAxKQorCXsKKwkgICAgcGVycm9y KCJmd3JpdGUgYmxvY2tcbiIpOworCSAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcg YmxvY2sgdG8gcG9zaXRpb24gJWRcbiIsIHN0cmVhbS0+Y3VyYmxvY2tubyk7CisJICAgIHJldHVy biAtMTsKKwl9CisgICAgcmV0dXJuIDA7Cit9CisKIGludCBoaW1kX21wM3N0cmVhbV9vcGVuKHN0 cnVjdCBoaW1kICogaGltZCwgdW5zaWduZWQgaW50IHRyYWNrbm8sIHN0cnVjdCBoaW1kX21wM3N0 cmVhbSAqIHN0cmVhbSwgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKQogewogICAgIHN0cnVj dCB0cmFja2luZm8gdHJraW5mbzsKZGlmZiAtLWdpdCBhL2xpYmhpbWQvdHJhY2tpbmRleC5jIGIv bGliaGltZC90cmFja2luZGV4LmMKaW5kZXggYjNlMDUxZS4uNTlmNGQ5ZCAxMDA2NDQKLS0tIGEv bGliaGltZC90cmFja2luZGV4LmMKKysrIGIvbGliaGltZC90cmFja2luZGV4LmMKQEAgLTU4LDYg KzU4LDY5IEBAIHN0YXRpYyB2b2lkIGdldF9kb3N0aW1lKHN0cnVjdCB0bSAqIHRtLCB1bnNpZ25l ZCBjb25zdCBjaGFyICogYnl0ZXMpCiAgICAgdG0tPnRtX3llYXIgPSAoKHRoZWRhdGUgJiAweEZF MDApID4+IDkpICsgODA7CiB9CiAKKworc3RhdGljIHZvaWQgZG9zX3NldHRpbWUodW5zaWduZWQg Y2hhciAqIGJ1ZmZlciwgY29uc3Qgc3RydWN0IHRtICogdG0pCit7CisgICBzZXRiZXdvcmQxNihi dWZmZXIsICh0bS0+dG1fbWRheSkgfAorICAgICAgICAgICAgICAgICAgICAgICAoKHRtLT50bV9t b24gKyAxKSA8PCA1KSB8CisgICAgICAgICAgICAgICAgICAgICAgICgodG0tPnRtX3llYXIgLSA4 MCkgPDwgOSkpOworICAgc2V0YmV3b3JkMTYoYnVmZmVyKzIsICh0bS0+dG1fc2VjLzIpIHwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAodG0tPnRtX21pbiA8PCA1KSB8CisgICAgICAgICAgICAg ICAgICAgICAgICAgKHRtLT50bV9ob3VyIDw8IDEpKTsKK30KKworc3RhdGljIHZvaWQgc2V0dHJh Y2soc3RydWN0IHRyYWNraW5mbyAqdCwgdW5zaWduZWQgY2hhciAqIHRyYWNrYnVmZmVyKQorewor ICBkb3Nfc2V0dGltZSh0cmFja2J1ZmZlciswLCAgJnQtPnJlY29yZGluZ3RpbWUpOworICBzZXRi ZXdvcmQzMih0cmFja2J1ZmZlcis0LCAgdC0+ZWtibnVtKTsKKyAgc2V0YmV3b3JkMTYodHJhY2ti dWZmZXIrOCwgIHQtPnRpdGxlKTsKKyAgc2V0YmV3b3JkMTYodHJhY2tidWZmZXIrMTAsIHQtPmFy dGlzdCk7CisgIHNldGJld29yZDE2KHRyYWNrYnVmZmVyKzEyLCB0LT5hbGJ1bSk7CisgIHRyYWNr YnVmZmVyWzE0XSA9IHQtPnRyYWNraW5hbGJ1bTsKKworICBtZW1jcHkodHJhY2tidWZmZXIrMTYs IHQtPmtleSwgOCk7CisgIG1lbWNweSh0cmFja2J1ZmZlcisyNCwgdC0+bWFjLCA4KTsKKyAgdHJh Y2tidWZmZXJbMzJdID0gdC0+Y29kZWNfaWQ7CisKKyAgbWVtY3B5KHRyYWNrYnVmZmVyKzMzLCB0 LT5jb2RlY2luZm8sIDMpOworICBtZW1jcHkodHJhY2tidWZmZXIrNDQsIHQtPmNvZGVjaW5mbysz LCAyKTsKKworICBzZXRiZXdvcmQxNih0cmFja2J1ZmZlciszNiwgdC0+Zmlyc3RmcmFnKTsKKyAg c2V0YmV3b3JkMTYodHJhY2tidWZmZXIrMzgsIHQtPnRyYWNrbnVtKTsKKyAgc2V0YmV3b3JkMTYo dHJhY2tidWZmZXIrNDAsIHQtPnNlY29uZHMpOworCisgIG1lbWNweSh0cmFja2J1ZmZlcis0OCwg ICAgICB0LT5jb250ZW50aWQsIDIwKTsKKyAgZG9zX3NldHRpbWUodHJhY2tidWZmZXIrNjgsICZ0 LT5zdGFydHRpbWUpOworICBkb3Nfc2V0dGltZSh0cmFja2J1ZmZlcis3MiwgJnQtPmVuZHRpbWUp OworCisgIC8qIERSTSBzdHVmZiAqLworICB0cmFja2J1ZmZlcls0Ml0gPSB0LT5MdDsKKyAgdHJh Y2tidWZmZXJbNDNdID0gdC0+RGVzdDsKKyAgdHJhY2tidWZmZXJbNzZdID0gdC0+WGNjOworICB0 cmFja2J1ZmZlcls3OF0gPSB0LT5DYzsKK30KKworc3RhdGljIHZvaWQgc2V0ZnJhZyhzdHJ1Y3Qg ZnJhZ2luZm8gKmYsIHVuc2lnbmVkIGNoYXIgKiBmcmFnYnVmZmVyKQoreworICBtZW1jcHkoZnJh Z2J1ZmZlciwgJmYtPmtleSwgOCk7CisgIHNldGJld29yZDE2KGZyYWdidWZmZXIrOCwgIGYtPmZp cnN0YmxvY2spOworICBzZXRiZXdvcmQxNihmcmFnYnVmZmVyKzEwLCBmLT5sYXN0YmxvY2spOwor ICBmcmFnYnVmZmVyWzEyXSA9IGYtPmZpcnN0ZnJhbWU7CisgIGZyYWdidWZmZXJbMTNdID0gZi0+ bGFzdGZyYW1lOworICBzZXRiZXdvcmQxNihmcmFnYnVmZmVyKzE0LGYtPm5leHRmcmFnKTsKK30K KworaW50IGhpbWRfZ2V0X2ZyZWVfdHJhY2tpbmRleChzdHJ1Y3QgaGltZCAqIGhpbWQpCit7Cisg ICAgaW50IGlkeF9mcmVlc2xvdDsKKyAgICB1bnNpZ25lZCBjaGFyICogbGlua2J1ZmZlcjsKKwor ICAgIGxpbmtidWZmZXIgICA9IGdldF90cmFjayhoaW1kLCAwKTsKKyAgICBpZHhfZnJlZXNsb3Qg PSBiZXdvcmQxNigmbGlua2J1ZmZlclszOF0pOworCisgICAgcmV0dXJuIGlkeF9mcmVlc2xvdDsK K30KKwogaW50IGhpbWRfZ2V0X3RyYWNrX2luZm8oc3RydWN0IGhpbWQgKiBoaW1kLCB1bnNpZ25l ZCBpbnQgaWR4LCBzdHJ1Y3QgdHJhY2tpbmZvICogdCwgc3RydWN0IGhpbWRlcnJpbmZvICogc3Rh dHVzKQogewogICAgIHVuc2lnbmVkIGNoYXIgKiB0cmFja2J1ZmZlcjsKQEAgLTk3LDYgKzE2MCw0 MyBAQCBpbnQgaGltZF9nZXRfdHJhY2tfaW5mbyhzdHJ1Y3QgaGltZCAqIGhpbWQsIHVuc2lnbmVk IGludCBpZHgsIHN0cnVjdCB0cmFja2luZm8gKgogICAgIHJldHVybiAwOwogfQogCisKK2ludCBo aW1kX2FkZF90cmFja19pbmZvKHN0cnVjdCBoaW1kICogaGltZCwgc3RydWN0IHRyYWNraW5mbyAq IHQsIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1cykKK3sKKyAgICBpbnQgaWR4X2ZyZWVzbG90 OworICAgIHVuc2lnbmVkIGNoYXIgKiBsaW5rYnVmZmVyOworICAgIHVuc2lnbmVkIGNoYXIgKiB0 cmFja2J1ZmZlcjsKKyAgICB1bnNpZ25lZCBjaGFyICogcGxheV9vcmRlcl90YWJsZSA9IGhpbWQt PnRpZmRhdGErMHgxMDA7CisKKyAgICBzdGF0dXMgPSBzdGF0dXM7CisKKyAgICBnX3JldHVybl92 YWxfaWZfZmFpbChoaW1kICE9IE5VTEwsIC0xKTsKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbCh0 ICE9IE5VTEwsIC0xKTsKKworICAgIC8qIGdldCB0cmFja1swXSAtIHRoZSBmcmVlLWNoYWluIGlu ZGV4ICovCisgICAgbGlua2J1ZmZlciAgID0gZ2V0X3RyYWNrKGhpbWQsIDApOworICAgIGlkeF9m cmVlc2xvdCA9IGJld29yZDE2KCZsaW5rYnVmZmVyWzM4XSk7CisKKyAgICAvKiBhbGxvY2F0ZSBz bG90IGlkeF9mcmVlc2xvdCBmb3IgdGhlIG5ldyB0cmFjayovCisgICAgdHJhY2tidWZmZXIgID0g Z2V0X3RyYWNrKGhpbWQsIGlkeF9mcmVlc2xvdCk7CisgICAgdC0+dHJhY2tudW0gID0gaWR4X2Zy ZWVzbG90OworCisgICAgLyogdXBkYXRlIHRyYWNrW10gLSBmcmVlLWNoYWluIGluZGV4ICovCisg ICAgc2V0YmV3b3JkMTYoJmxpbmtidWZmZXJbMzhdLCBiZXdvcmQxNigmdHJhY2tidWZmZXJbMzhd KSk7CisKKyAgICAvKiBjb3B5IHRyYWNraW5mbyB0byBzbG90ICovCisgICAgc2V0dHJhY2sodCwg dHJhY2tidWZmZXIpOworCisgICAgLyogaW5jcmVhc2UgdHJhY2sgY291bnQgKi8KKyAgICBzZXRi ZXdvcmQxNihwbGF5X29yZGVyX3RhYmxlLCBoaW1kX3RyYWNrX2NvdW50KGhpbWQpKzEpOworCisg ICAgLyogYWRkIGVudHJ5IGZvciBuZXcgdHJhY2sgaW4gcGxheSBvcmRlciB0YWJsZSAqLworICAg IHNldGJld29yZDE2KHBsYXlfb3JkZXJfdGFibGUrMippZHhfZnJlZXNsb3QsIHQtPnRyYWNrbnVt KTsKKworICAgIHJldHVybiBpZHhfZnJlZXNsb3Q7Cit9CisKKwogY29uc3QgY2hhciAqIGhpbWRf Z2V0X2NvZGVjX25hbWUoY29uc3Qgc3RydWN0IHRyYWNraW5mbyAqIHRyYWNrKQogewogICAgIHN0 YXRpYyBjaGFyIGJ1ZmZlcls1XTsKQEAgLTIwNiw2ICszMDYsMzIgQEAgaW50IGhpbWRfZ2V0X2Zy YWdtZW50X2luZm8oc3RydWN0IGhpbWQgKiBoaW1kLCB1bnNpZ25lZCBpbnQgaWR4LCBzdHJ1Y3Qg ZnJhZ2luZm8KICAgICByZXR1cm4gMDsKIH0KIAorCitpbnQgaGltZF9hZGRfZnJhZ21lbnRfaW5m byhzdHJ1Y3QgaGltZCAqIGhpbWQsIHN0cnVjdCBmcmFnaW5mbyAqIGYsIHN0cnVjdCBoaW1kZXJy aW5mbyAqIHN0YXR1cykKK3sKKyAgICBpbnQgaWR4X2ZyZWVmcmFnOworICAgIHVuc2lnbmVkIGNo YXIgKiBsaW5rYnVmZmVyOworICAgIHVuc2lnbmVkIGNoYXIgKiBmcmFnYnVmZmVyOworICAgIHN0 YXR1cyA9IHN0YXR1czsKKworICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKGhpbWQgIT0gTlVMTCwg LTEpOworICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKGYgIT0gTlVMTCwgLTEpOworCisgICAgbGlu a2J1ZmZlciAgICA9IGdldF9mcmFnKGhpbWQsIDApOworCisgICAgaWR4X2ZyZWVmcmFnICA9IGJl d29yZDE2KGxpbmtidWZmZXIrMTQpICYgMHhGRkY7CisgICAgZnJhZ2J1ZmZlciAgICA9IGdldF9m cmFnKGhpbWQsIGlkeF9mcmVlZnJhZyk7CisKKyAgICBzZXRiZXdvcmQxNihsaW5rYnVmZmVyKzE0 LCBiZXdvcmQxNihmcmFnYnVmZmVyKzE0KSAmIDB4RkZGKTsKKyAgICBmLT5uZXh0ZnJhZyA9IDA7 CisKKyAgICAvKiBjb3B5IGZyYWdtZW50IHN0cnVjdCB0byBzbG90IGJ1ZmZlciAqLworICAgIHNl dGZyYWcoZiwgZnJhZ2J1ZmZlcik7CisKKyAgICByZXR1cm4gaWR4X2ZyZWVmcmFnOworfQorCisK IGNoYXIqIGhpbWRfZ2V0X3N0cmluZ19yYXcoc3RydWN0IGhpbWQgKiBoaW1kLCB1bnNpZ25lZCBp bnQgaWR4LCBpbnQqdHlwZSwgaW50KiBsZW5ndGgsIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1 cykKIHsKICAgICBpbnQgY3VyaWR4OwpAQCAtMzE2LDMgKzQ0MiwxMTkgQEAgY2hhciogaGltZF9n ZXRfc3RyaW5nX3V0Zjgoc3RydWN0IGhpbWQgKiBoaW1kLCB1bnNpZ25lZCBpbnQgaWR4LCBpbnQq dHlwZSwgc3RydWMKICAgICB9CiAgICAgcmV0dXJuIG91dDsKIH0KKworCitpbnQgaGltZF9hZGRf c3RyaW5nKHN0cnVjdCBoaW1kICogaGltZCwgY2hhciAqc3RyaW5nLCBpbnQgdHlwZSwgaW50IGxl bmd0aCwgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKQoreworICAgIGludCBjdXJpZHgsIGxh c3RpZHg7CisgICAgaW50IHN0cmlkeCwgZW5kX3N0cmlkeDsKKyAgICBpbnQgbnNsb3RzPTAsIHJl c3Q9MDsKKyAgICBpbnQgaWR4X2ZyZWVzbG90OworICAgIHVuc2lnbmVkIGNoYXIgKiBsaW5rY2h1 bms7CisgICAgdW5zaWduZWQgY2hhciAqIGZyZWVzbG90OworICAgIHVuc2lnbmVkIGNoYXIgKiBj dXJjaHVuazsKKworICAgIGNvbnN0IGNoYXIgKiBjdXJyZW50X2NoYXJzZXQ7CisgICAgaW50IHN0 cmVuY29kaW5nPTA7CisKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChoaW1kICE9IE5VTEwsIC0x KTsKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChzdHJpbmcgIT0gTlVMTCwgLTEpOworCisKKyAg ICBpZihnX2dldF9jaGFyc2V0KCZjdXJyZW50X2NoYXJzZXQpKQorCXN0cmVuY29kaW5nID0gSElN RF9FTkNPRElOR19MQVRJTjE7CisgICAgZWxzZSBpZihnX2FzY2lpX3N0cm5jYXNlY21wKGN1cnJl bnRfY2hhcnNldCwgIlVURjE2QkUiLCA3KSA9PSAwKQorCXN0cmVuY29kaW5nID0gSElNRF9FTkNP RElOR19VVEYxNkJFOworICAgIGVsc2UgaWYoZ19hc2NpaV9zdHJuY2FzZWNtcChjdXJyZW50X2No YXJzZXQsICJTSElGVF9KSVMiLCA5KSA9PSAwKQorCXN0cmVuY29kaW5nID0gSElNRF9FTkNPRElO R19TSElGVF9KSVM7CisgICAgZWxzZQorCXNldF9zdGF0dXNfcHJpbnRmKHN0YXR1cywgSElNRF9F UlJPUl9VTktOT1dOX0VOQ09ESU5HLAorCQkJICAidW5rbm93biBlbmNvZGluZyIpOworCisgICAg LyogaG93IG1hbnkgbnVtYmVyIG9mIHNsb3RzIHRvIHN0b3JlIHN0cmluZyBpbj8gKi8KKworICAg IGlmKGxlbmd0aCA8PSAxMykKKwl7CisJICAgIG5zbG90cyA9IDE7CisJfQorICAgIGVsc2UgaWYo bGVuZ3RoID4gMTMpCisJeworCSAgICBuc2xvdHMgPSAxOworCSAgICBuc2xvdHMgKz0gKGxlbmd0 aC0xMykgLyAxNDsKKwkgICAgcmVzdCAgID0gKGxlbmd0aC0xMykgJSAxNDsKKwkgICAgaWYocmVz dCkKKwkJbnNsb3RzKz0xOworCX0KKyAgICBlbHNlCisJeworCX0KKworICAgIC8qIGdldCBpbmRl eCB0byBmaXJzdCBmcmVlIHNsb3QgaW4gYXJyYXkgKi8KKyAgICBsaW5rY2h1bmsgPSBnZXRfc3Ry Y2h1bmsoaGltZCwgMCk7CisgICAgaWR4X2ZyZWVzbG90ID0gc3RybGluayhsaW5rY2h1bmspOwor CisgICAgLyogdXBkYXRlIGluZGV4IGxpbmsgdG8gbmV4dCBmcmVlIGNodW5rICAqLworICAgIHNl dGJld29yZDE2KCZsaW5rY2h1bmtbMTRdLCBpZHhfZnJlZXNsb3QrbnNsb3RzKTsKKworICAgIC8q IGhlYWQgc2xvdCBvZiB3aGVyZSBzdHJpbmcgd2lsbCBiZSBzdG9yZWQgKi8KKyAgICBmcmVlc2xv dCA9IGdldF9zdHJjaHVuayhoaW1kLCBpZHhfZnJlZXNsb3QpOworCisgICAgLyogaW5kZXhlcyAg dG8ga2VlcCB0cmFjayBvZiBjb3B5aW5nIHN0cmluZyBpbnRvIHNsb3RzCisgICAgICAgKHNsb3Rz WzFdLC4uLixzbG90W05dOyAoTi0xKSBuciBvZiBzbG90cykgKi8KKworICAgIGN1cmlkeCAgICAg PSBpZHhfZnJlZXNsb3Q7CisgICAgbGFzdGlkeCAgICA9IChpZHhfZnJlZXNsb3QgKyBuc2xvdHMp IC0gMTsKKyAgICBzdHJpZHggICAgID0gMDsKKyAgICBlbmRfc3RyaWR4ID0gbnNsb3RzOworCisg ICAgZ19yZXR1cm5fdmFsX2lmX2ZhaWwoY3VyaWR4ID4gMCwgLTEpOworICAgIGdfcmV0dXJuX3Zh bF9pZl9mYWlsKGN1cmlkeCA8IDQwOTYsIC0xKTsKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChs YXN0aWR4IDwgNDA5NiwgLTEpOworCisgICAgLyogbmVlZCB0aGUgc3RyaW5nIGFueSBjb250aW51 YXRpb24gc2xvdHMgPyovCisgICAgaWYobGVuZ3RoIDw9IDEzKQorCXsKKwkgICAgY3VyY2h1bmsg ICAgPSBnZXRfc3RyY2h1bmsoaGltZCwgY3VyaWR4KTsKKwkgICAgY3VyY2h1bmtbMF0gPSBzdHJl bmNvZGluZzsKKworCSAgICBzZXRiZXdvcmQxNigmY3VyY2h1bmtbMTRdLCAodHlwZSA8PCAxMikg KyAweDAwKTsgICAgICAvLyB0eXBlIHwgMDAKKwkgICAgbWVtY3B5KGN1cmNodW5rKzEsICZzdHJp bmdbMF0sIGxlbmd0aCk7CisKKwkgICAgcmV0dXJuIGlkeF9mcmVlc2xvdDsKKwl9CisgICAgLyog bnNsb3RzLTEgY29udGludWF0aW9uIHNsb3RzIGlzIG5lZWRlZCAqLworICAgIGVsc2UKKwl7CisJ ICAgIC8qCisJICAgICAgIHNsb3QtaGVhZAorCSAgICAgICBuc2xvdHMgPiAxICYmICAocmVzdCA9 PSAwIHx8IHJlc3QgPiAwKQorCSAgICAqLworCSAgICBjdXJjaHVuayAgICA9IGdldF9zdHJjaHVu ayhoaW1kLCBjdXJpZHgpOworCSAgICBjdXJjaHVua1swXSA9IHN0cmVuY29kaW5nOworCisJICAg IHNldGJld29yZDE2KCZjdXJjaHVua1sxNF0sICh0eXBlIDw8IDEyKSArIChjdXJpZHgrMSkpOyAg ICAgIC8vIHR5cGUgfCBsbmsKKwkgICAgbWVtY3B5KGN1cmNodW5rKzEsICZzdHJpbmdbMF0sIDEz KTsKKworCSAgICBjdXJpZHggICArPSAxOworCSAgICBzdHJpZHggICArPSAxOworCX0KKworICAg IGZvciAoOyBjdXJpZHggPCAobGFzdGlkeCsxKSAmJiAoc3RyaWR4IDwgZW5kX3N0cmlkeCk7CisJ IGN1cmlkeCArPSAxLCBzdHJpZHggKz0gMSkKKwl7CisJICAgIGN1cmNodW5rID0gZ2V0X3N0cmNo dW5rKGhpbWQsIGN1cmlkeCk7CisKKwkgICAgLyogcmVhY2hlZCB0aGUgbGFzdCBjb250aW51YXRp b24gc2xvdCA/ICovCisJICAgIGlmKGN1cmlkeCA9PSBsYXN0aWR4KQorCQl7CisJCSAgICBzZXRi ZXdvcmQxNigmY3VyY2h1bmtbMTRdLCAoU1RSSU5HX1RZUEVfQ09OVElOVUFUSU9OIDw8IDEyKSAr IDApOyAgICAgIC8vIHR5cGUgfCBsbmsKKwkJICAgIG1lbWNweShjdXJjaHVuaywgJnN0cmluZ1tz dHJpZHgqMTRdLCAocmVzdCA9PSAwID8gMTQgOiByZXN0KSApOworCQkgICAgYnJlYWs7CisJCX0K KworCSAgICBzZXRiZXdvcmQxNigmY3VyY2h1bmtbMTRdLCAoU1RSSU5HX1RZUEVfQ09OVElOVUFU SU9OIDw8IDEyKSsoY3VyaWR4KzEpKTsgICAgICAvLyB0eXBlIHwgbG5rCisJICAgIG1lbWNweShj dXJjaHVuaywgJnN0cmluZ1tzdHJpZHgqMTRdLCAxNCk7CisJfQorCisgICAgcmV0dXJuIGlkeF9m cmVlc2xvdDsKK30K --=_gcmail5-- From manner.moe@gmx.de Tue Mar 15 22:51:16 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pzc95-0003v3-5H>; Tue, 15 Mar 2011 22:51:15 +0100 Received: from mailout-de.gmx.net ([213.165.64.22]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1Pzc95-0005HC-0q>; Tue, 15 Mar 2011 22:51:15 +0100 Received: (qmail invoked by alias); 15 Mar 2011 21:51:14 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp018) with SMTP; 15 Mar 2011 22:51:14 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX193KZ4O2UR3Zc/9GTzz0WtQRC9jkDX+sPPwovgVmD r9Z1Ro64LVZaga Date: Tue, 15 Mar 2011 22:51:22 +0100 Message-ID: X-GeMail-Ref: <0826407D-ECEF-4D60-BB75-1829DED5E4A2@gmx.de> From: manner.moe@gmx.de To: manner.moe@gmx.de Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.22 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1300225875-00005A17-D86AC582/0-0/0-0 X-Bogosity: Unsure, tests=bogofilter, spamicity=0.469398, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Dschibuti.ZEDAT.-Berlin.DE X-Spam-Level: x X-Spam-Status: No, score=1.7 required=5.0 tests=FU_BOGO_UNSURE,NO_REAL_NAME, SPF_HELO_PASS,SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Mar 2011 21:51:16 -0000 ----- Originale Nachricht ----- >not fixed yet: >- links to string table (title, artist, album) are not set correctly? > title is stored at index 01 (0x40010) of string table but is shown as >"unknown title" in himddump, artist and album are not set. O.K., encoding is not set in the string table. By setting encoding (first byte of string field) the title will be shown correctly. >Thomas From glaubitz@physik.fu-berlin.de Tue Mar 15 22:52:59 2011 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PzcAk-0003xt-De>; Tue, 15 Mar 2011 22:52:58 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1PzcAk-0003cO-Bk>; Tue, 15 Mar 2011 22:52:58 +0100 Received: from kri3-1x-dhcp348.studby.uio.no ([193.157.241.96]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1PzcAk-000502-8R>; Tue, 15 Mar 2011 22:52:58 +0100 Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=us-ascii From: Adrian Glaubitz In-Reply-To: Date: Tue, 15 Mar 2011 22:52:57 +0100 Content-Transfer-Encoding: 7bit Message-Id: <6FFF228B-2AC0-4BAB-95C1-657ED80C15F4@physik.fu-berlin.de> References: To: manner.moe@gmx.de X-Mailer: Apple Mail (2.1082) X-Originating-IP: 193.157.241.96 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1300225978-00005A17-8416A436/0-0/0-0 X-Bogosity: Unsure, tests=bogofilter, spamicity=0.469943, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Algerien.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=ALL_TRUSTED,FU_BOGO_UNSURE Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Mar 2011 21:52:59 -0000 On Mar 15, 2011, at 10:51 PM, manner.moe@gmx.de wrote: > ----- Originale Nachricht ----- > > >> not fixed yet: > >> - links to string table (title, artist, album) are not set correctly? >> title is stored at index 01 (0x40010) of string table but is shown as >> "unknown title" in himddump, artist and album are not set. > > O.K., encoding is not set in the string table. > By setting encoding (first byte of string field) the title will be shown > correctly. Awesome :D. And, does it play on the RH1? Adrian From manner.moe@gmx.de Tue Mar 15 23:10:08 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1PzcRK-0004Z5-VZ>; Tue, 15 Mar 2011 23:10:07 +0100 Received: from mailout-de.gmx.net ([213.165.64.22]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1PzcRK-00075y-Ph>; Tue, 15 Mar 2011 23:10:06 +0100 Received: (qmail invoked by alias); 15 Mar 2011 22:10:06 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp070) with SMTP; 15 Mar 2011 23:10:06 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX191McocNbV1kXZWrNy6vHRHhaoQ+c4z9kPQpYrfhl 7hpeY7XxUWH69q Date: Tue, 15 Mar 2011 23:10:14 +0100 Message-ID: <93B96BCB-8E42-46DC-870E-6AC2AA91D6D6@gmx.de> X-GeMail-Ref: <6FFF228B-2AC0-4BAB-95C1-657ED80C15F4@physik.fu-berlin.de> From: manner.moe@gmx.de To: "Adrian Glaubitz" Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.22 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1300227006-00005A17-69E4770A/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.046450, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Botsuana.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Mar 2011 22:10:08 -0000 ----- Originale Nachricht ----- >On Mar 15, 2011, at 10:51 PM, manner.moe@gmx.de wrote: >> ----- Originale Nachricht ----- >> >> >>> not fixed yet: >> >>> - links to string table (title, artist, album) are not set correctly? >>> title is stored at index 01 (0x40010) of string table but is shown as >>> "unknown title" in himddump, artist and album are not set. >> >> O.K., encoding is not set in the string table. >> By setting encoding (first byte of string field) the title will be shown >> correctly. >Awesome :D. And, does it play on the RH1? Not yet, i think the codec specific infornation bytes are not set correctly. Maybe someone can help my finding the correct values for my track (mpeg1 layer3, stereo, 128kb/s@44k1Hz). The code for setting encoding byte looks fine, i donīt know whatīs going wrong there. I changed this byte manually for testing. Thomas From manner.moe@gmx.de Wed Mar 16 20:06:56 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Pzw3a-0004dG-GW>; Wed, 16 Mar 2011 20:06:54 +0100 Received: from mailout-de.gmx.net ([213.165.64.23]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1Pzw3a-0008Hq-DK>; Wed, 16 Mar 2011 20:06:54 +0100 Received: (qmail invoked by alias); 16 Mar 2011 19:06:53 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp033) with SMTP; 16 Mar 2011 20:06:53 +0100 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX19p1jJaUPxpviV/rzukj3PJAd86KKQaJkEApAncro Ps5QGUb++s/Kw9 Date: Wed, 16 Mar 2011 20:07:01 +0100 Message-ID: <9D7D7690-A4B7-4103-A0EF-85E6172818EA@gmx.de> X-GeMail-Ref: From: manner.moe@gmx.de To: manner.moe@gmx.de Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.23 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1300302414-00005A17-F5508E10/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.040106, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Botsuana.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Mar 2011 19:06:56 -0000 >>----- Originale Nachricht ----- >>>On Mar 15, 2011, at 10:51 PM, manner.moe@gmx.de wrote: >>>> ----- Originale Nachricht ----- >>>> >>>> >>>>> not fixed yet: >>>> >>>>> - links to string table (title, artist, album) are not set correctly? >>>>> title is stored at index 01 (0x40010) of string table but is shown as >>>>> "unknown title" in himddump, artist and album are not set. >>>> >>>> O.K., encoding is not set in the string table. >>>> By setting encoding (first byte of string field) the title will be shown >>>> correctly. >>The code for setting encoding byte looks fine, i donīt know whatīs going >>wrong there. >>I changed this byte manually for testing. >This is a windows specific error, on my computer g_get_charset(...) gets >CP1252, so HIMD_ERROR_UNKNOWN_ENCODING is set. >We should check for errors from status after calling himd_add_string() in >himddump.c or break the code at "unknown encoding" errors to let >himd_add_sting() fail. In himddump.c at get_songinfo(...) strings are already converted to utf8 by libid3tag, so why asking for current charset in himd_add_string() instead of setting HIMD_ENCODING_LATIN1 directly? The current charset is not the same as the encoding for a string read from an id3 tag. If current charset is utf16 the encoding byte might be set to utf16 for an utf8 string. Or maybe we can use something like this: struct enc_string { char * string; int encoding; } So we can set the correct encoding when reading the string. What do you think? Thomas From manner.moe@gmx.de Thu Mar 31 00:30:16 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Q53u3-0007yB-BX>; Thu, 31 Mar 2011 00:30:15 +0200 Received: from mailout-de.gmx.net ([213.165.64.22]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with smtp (envelope-from ) id <1Q53u3-0005KM-2W>; Thu, 31 Mar 2011 00:30:15 +0200 Received: (qmail invoked by alias); 30 Mar 2011 22:30:14 -0000 Received: from dslc-082-083-147-052.pools.arcor-ip.net (EHLO MyHost) [82.83.147.52] by mail.gmx.net (mp028) with SMTP; 31 Mar 2011 00:30:14 +0200 X-Authenticated: #17747474 X-Provags-ID: V01U2FsdGVkX18Ja0F3zYMJY6rcT/BgbmUe/TAQBMzldi4en40jbT F5GB8/SuX78oPn Date: Thu, 31 Mar 2011 00:30:18 +0200 Message-ID: X-GeMail-Ref: From: manner.moe@gmx.de To: manner.moe@gmx.de Content-Type: multipart/mixed; boundary="=_gcmail5" MIME-Version: 1.0 X-Mailer: GcMail 5.2.3.0(RG6) http://www.gcmail.de X-Y-GMX-Trusted: 0 X-Originating-IP: 213.165.64.22 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1301524215-00005A17-8BEE3B5F/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.303446, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Algerien.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=NO_REAL_NAME,SPF_HELO_PASS, SPF_PASS Cc: linux-minidisc@lists.fu-berlin.de Subject: Re: [linux-minidisc] First patch for write support on HiMD available X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list Reply-To: manner.moe@gmx.de List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Mar 2011 22:30:16 -0000 This is a multi-part message in MIME format --=_gcmail5 Content-Type: multipart/alternative; boundary="=_gcmail5_alt" --=_gcmail5_alt Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit >Betreff : Re: [linux-minidisc] First patch for write support on HiMD available >Gesendet: 16.03.2011 20:42:12 >An : "manner.moe@gmx.de" >Von: "manner.moe@gmx.de" >----- Originale Nachricht ----- >>Betreff : Re: [linux-minidisc] First patch for write support on HiMD available >>Gesendet: 15.03.2011 23:37:05 >>An : "manner.moe@gmx.de" >>Von: "manner.moe@gmx.de" >>----- Originale Nachricht ----- >>>----- Originale Nachricht ----- >>>>On Mar 15, 2011, at 10:51 PM, manner.moe@gmx.de wrote: >>>>> ----- Originale Nachricht ----- >>>>> >>>>> >>>>>> not fixed yet: >>>>> >>>>>> - links to string table (title, artist, album) are not set correctly? >>>>>> title is stored at index 01 (0x40010) of string table but is shown as >>>>>> "unknown title" in himddump, artist and album are not set. >>>>> >>>>> O.K., encoding is not set in the string table. >>>>> By setting encoding (first byte of string field) the title will be shown >>>>> correctly. Hi, i fixed this and rearranged the string writing procedure to ensure to set the right encoding byte. Also, as my first patch may be hard to reproduce i splitted it into several parts. Just apply them one after another rigth after applying martens patch. So you do not have to merge the code manually. Thomas --=_gcmail5_alt-- --=_gcmail5 Content-Type: application/octet-stream; name="0002-write-completed-audio-block-data.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0002-write-completed-audio-block-data.patch" ZGlmZiAtLWdpdCBhL2hpbWRkdW1wL2hpbWRkdW1wLmMgYi9oaW1kZHVtcC9oaW1kZHVtcC5jCmlu ZGV4IDY1MGE3ZTguLmMyMDllMmQgMTAwNjQ0Ci0tLSBhL2hpbWRkdW1wL2hpbWRkdW1wLmMKKysr IGIvaGltZGR1bXAvaGltZGR1bXAuYwpAQCAtNDQ4LDggKzQ0OCw5IEBAIHZvaWQgZ2V0X3Nvbmdp bmZvKGNvbnN0IGNoYXIgKmZpbGVwYXRoLCBnY2hhciAqKiBhcnRpc3QsIGdjaGFyICoqIHRpdGxl LCBnY2hhciAqCiAgICAgaWQzX2ZpbGVfY2xvc2UoZmlsZSk7CiB9CiAKLXZvaWQgYmxvY2tfaW5p dChzdHJ1Y3QgYmxvY2tpbmZvICogYiwgc2hvcnQgaW50IG5mcmFtZXMsIHNob3J0IGludCBsZW5k YXRhLCB1bnNpZ25lZCBpbnQgc2VyaWFsX251bWJlcikKK3ZvaWQgYmxvY2tfaW5pdChzdHJ1Y3Qg YmxvY2tpbmZvICogYiwgc2hvcnQgaW50IG5mcmFtZXMsIHNob3J0IGludCBsZW5kYXRhLCB1bnNp Z25lZCBpbnQgc2VyaWFsX251bWJlciwgdW5zaWduZWQgY2hhciAqIGNpZCkKIHsKKyAgICBzdHJu Y3B5KChjaGFyKikmYi0+dHlwZSwgIlNQTUEiLCA0KTsKICAgICBiLT5uZnJhbWVzICAgICAgID0g bmZyYW1lczsKICAgICBiLT5tY29kZSAgICAgICAgID0gMDsKICAgICBiLT5sZW5kYXRhICAgICAg ID0gbGVuZGF0YTsKQEAgLTQ1OSwxMiArNDYwLDEyIEBAIHZvaWQgYmxvY2tfaW5pdChzdHJ1Y3Qg YmxvY2tpbmZvICogYiwgc2hvcnQgaW50IG5mcmFtZXMsIHNob3J0IGludCBsZW5kYXRhLCB1bnNp CiAgICAgLy8gICAgcHJpbnRfaGV4KCh1bnNpZ25lZCBjaGFyKikmYi0+a2V5LCA4KTsKICAgICBt ZW1zZXQoJmItPml2LCAwLCA4KTsKICAgICBtZW1zZXQoJmItPmJhY2t1cF9rZXksIDAsIDgpOwot ICAgIHN0cm5jcHkoKGNoYXIqKSZiLT5iYWNrdXBfdHlwZSwgIlNQTUEiLCA0KTsKKyAgICBiLT5i YWNrdXBfdHlwZSAgID0gYi0+dHlwZTsKICAgICBtZW1zZXQoJmItPnJlc2VydmVkMiwgMCwgOCk7 CiAgICAgYi0+YmFja3VwX3Jlc2VydmVkICAgICAgPSAwOwotICAgIGItPmJhY2t1cF9tY29kZSAg ICAgICAgID0gMDsKLSAgICBiLT5sbzMyX2NvbnRlbnRpZCAgICAgICA9IDA7Ci0gICAgYi0+YmFj a3VwX3NlcmlhbF9udW1iZXIgPSBzZXJpYWxfbnVtYmVyOworICAgIGItPmJhY2t1cF9tY29kZSAg ICAgICAgID0gYi0+bWNvZGU7CisgICAgYi0+bG8zMl9jb250ZW50aWQgICAgICAgPSBjaWRbMTZd KjE2Nzc3MjE2K2NpZFsxN10qNjU1MzYrY2lkWzE4XSoyNTYrY2lkWzE5XTsKKyAgICBiLT5iYWNr dXBfc2VyaWFsX251bWJlciA9IGItPnNlcmlhbF9udW1iZXI7CiB9CiAKIHZvaWQgYmxvY2tfcHJp bnRpbmZvKHN0cnVjdCBibG9ja2luZm8gKiBiKQpAQCAtNTQwLDcgKzU0MSw3IEBAIGludCBidWNr ZXRfYXBwZW5kKHN0cnVjdCBhYnVja2V0ICogcGJ1Y2tldCwgZ2NoYXIgKiBwZnJhbWUsIGd1aW50 IGZyYW1lbGVuKQogLy8gIGluIGEgb2JmdXNjYXRlZCBmb3JtIHVzaW5nIGEgNCBieXRlIGtleS4K IC8vCiBnaW50IHdyaXRlX2Jsb2NrcyhzdHJ1Y3QgbWFkX3N0cmVhbSAqc3RyZWFtLCBzdHJ1Y3Qg aGltZF93cml0ZXN0cmVhbSAqd3JpdGVfc3RyZWFtLCBtcDNrZXkga2V5LAotCQkgICBtYWRfdGlt ZXJfdCAqZHVyYXRpb24sIGdpbnQgKm5ibG9ja3MsIGdpbnQgKm5mcmFtZXMsIHN0cnVjdCBoaW1k ZXJyaW5mbyAqIHN0YXR1cykKKyAgICAgICAgICAgICAgICAgICBtYWRfdGltZXJfdCAqZHVyYXRp b24sIGdpbnQgKm5ibG9ja3MsIGdpbnQgKm5mcmFtZXMsIHVuc2lnbmVkIGNoYXIgKiBjaWQsIHN0 cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1cykKIHsKICAgICBzdHJ1Y3QgYWJ1Y2tldCBidWNrZXQ7 CiAgICAgc3RydWN0IG1hZF9oZWFkZXIgaGVhZGVyOwpAQCAtNTgxLDcgKzU4Miw3IEBAIGdpbnQg d3JpdGVfYmxvY2tzKHN0cnVjdCBtYWRfc3RyZWFtICpzdHJlYW0sIHN0cnVjdCBoaW1kX3dyaXRl c3RyZWFtICp3cml0ZV9zdHJlCiAJZ2ludCBuYnl0ZXNfYWRkZWQgPSBidWNrZXRfYXBwZW5kKCZi dWNrZXQsIHBmcmFtZSwgZnJhbWVsZW4pOwogCWlmKG5ieXRlc19hZGRlZCA8IDApIHsKIAkgICAg Ly9wcmludGYoIkRCRzogQnVja2V0IGZ1bGwhXG4iKTsKLQkgICAgYmxvY2tfaW5pdCgmYnVja2V0 LmJsb2NrLCBidWNrZXQubmZyYW1lcywgYnVja2V0LnRvdHNpemUsIGlibG9jayk7CisgICAgICAg ICAgICBibG9ja19pbml0KCZidWNrZXQuYmxvY2ssIGJ1Y2tldC5uZnJhbWVzLCBidWNrZXQudG90 c2l6ZSwgaWJsb2NrLCBjaWQpOwogCiAJICAgIC8vCSAgICBibG9ja19wcmludGluZm8oJmJ1Y2tl dC5ibG9jayk7CiAKQEAgLTY1Nyw2ICs2NTgsMTIgQEAgdm9pZCBoaW1kX3dyaXRlbXAzKHN0cnVj dCBoaW1kICAqaCwgY29uc3QgY2hhciAqZmlsZXBhdGgpCiAgICAgdW5zaWduZWQgbG9uZyBtcDNz aXplOwogICAgIGdjaGFyICogbXAzYnVmZmVyOwogICAgIGdjaGFyICogYXJ0aXN0PU5VTEwsICog dGl0bGU9TlVMTCwgKiBhbGJ1bT1OVUxMOworICAgIGludCBpOworICAgIHVuc2lnbmVkIGNoYXIg Y2lkWzIwXSA9IHsweDAyLCAweDAzLCAweDAwLCAweDAwfTsKKworICAgIC8vIEdlbmVyYXRlIHJh bmRvbSBjb250ZW50IElECisgICAgZm9yKGkgPSA0OyBpIDw9MTk7IGkrKykKKyAgICAgICAgY2lk W2ldID0gZ19yYW5kb21faW50X3JhbmdlKDAsMHhGRik7CiAKICAgICAvLyBHZXQgdHJhY2sgSUQz IGluZm9ybWF0aW9uCiAgICAgZ2V0X3NvbmdpbmZvKGZpbGVwYXRoLCAmYXJ0aXN0LCAmdGl0bGUs ICZhbGJ1bSk7CkBAIC02OTYsNyArNzAzLDcgQEAgdm9pZCBoaW1kX3dyaXRlbXAzKHN0cnVjdCBo aW1kICAqaCwgY29uc3QgY2hhciAqZmlsZXBhdGgpCiAJICAgIGV4aXQoMSk7CiAJfQogCi0gICAg d3JpdGVfYmxvY2tzKCZzdHJlYW0sICZ3cml0ZV9zdHJlYW0sIGtleSwgJmR1cmF0aW9uLCAmbmJs b2NrcywgJm5mcmFtZXMsICZzdGF0dXMpOworICAgIHdyaXRlX2Jsb2Nrcygmc3RyZWFtLCAmd3Jp dGVfc3RyZWFtLCBrZXksICZkdXJhdGlvbiwgJm5ibG9ja3MsICZuZnJhbWVzLCBjaWQsICZzdGF0 dXMpOwogCiAgICAgaGltZF93cml0ZXN0cmVhbV9jbG9zZSgmd3JpdGVfc3RyZWFtKTsKICAgICAv LyBFTkQ6IFdyaXRlIGJsb2NrcyB0byBBVERBVEEKZGlmZiAtLWdpdCBhL2xpYmhpbWQvbWRzdHJl YW0uYyBiL2xpYmhpbWQvbWRzdHJlYW0uYwppbmRleCBiN2FlMGU3Li5mN2NlN2VkIDEwMDY0NAot LS0gYS9saWJoaW1kL21kc3RyZWFtLmMKKysrIGIvbGliaGltZC9tZHN0cmVhbS5jCkBAIC0yMDcs NyArMjA3LDcgQEAgdm9pZCBoaW1kX3dyaXRlc3RyZWFtX2Nsb3NlKHN0cnVjdCBoaW1kX3dyaXRl c3RyZWFtICogc3RyZWFtKQogc3RhdGljIHZvaWQgc2V0YmxvY2soc3RydWN0IGJsb2NraW5mbyAq IGIsIHVuc2lnbmVkIGNoYXIgKiBibG9ja2J1ZmZlcikKIHsKICAgICBtZW1zZXQoYmxvY2tidWZm ZXIsIDAsIEhJTURfQkxPQ0tJTkZPX1NJWkUpOwotICAgIHN0cm5jcHkoKGNoYXIqKWJsb2NrYnVm ZmVyLCAiU1BNQSIsIHNpemVvZih1bnNpZ25lZCBpbnQpKTsKKyAgICBzZXRiZXdvcmQzMihibG9j a2J1ZmZlciwgR1VJTlQzMl9UT19CRShiLT50eXBlKSk7IC8qIGVuc3VyZSB0byB1c2UgYmlnIGVu ZGlhbiBvbiBhbGwgcGxhdGZvcm1zICovCiAgICAgc2V0YmV3b3JkMTYoYmxvY2tidWZmZXIrNCwg Yi0+bmZyYW1lcyk7CiAgICAgc2V0YmV3b3JkMTYoYmxvY2tidWZmZXIrNiwgYi0+bWNvZGUpOwog ICAgIHNldGJld29yZDE2KGJsb2NrYnVmZmVyKzgsIGItPmxlbmRhdGEpOwpAQCAtMjE1LDggKzIx NSwxMCBAQCBzdGF0aWMgdm9pZCBzZXRibG9jayhzdHJ1Y3QgYmxvY2tpbmZvICogYiwgdW5zaWdu ZWQgY2hhciAqIGJsb2NrYnVmZmVyKQogICAgIG1lbWNweShibG9ja2J1ZmZlcisxNiwgJmItPmtl eSwgOCk7CiAgICAgbWVtY3B5KGJsb2NrYnVmZmVyKzI0LCAmYi0+aXYsIDgpOwogICAgIG1lbWNw eShibG9ja2J1ZmZlciszMiwgJmItPmF1ZGlvX2RhdGEsIEhJTURfQVVESU9fU0laRSk7Ci0gICAg c2V0YmV3b3JkMTYoYmxvY2tidWZmZXIrMTYzNzQsIGItPm1jb2RlKTsKLSAgICBzZXRiZXdvcmQz MihibG9ja2J1ZmZlcisxNjM4MCwgYi0+c2VyaWFsX251bWJlcik7CisgICAgc2V0YmV3b3JkMzIo YmxvY2tidWZmZXIrMTYzNjgsIEdVSU5UMzJfVE9fQkUoYi0+YmFja3VwX3R5cGUpKTsKKyAgICBz ZXRiZXdvcmQxNihibG9ja2J1ZmZlcisxNjM3NCwgYi0+YmFja3VwX21jb2RlKTsKKyAgICBzZXRi ZXdvcmQzMihibG9ja2J1ZmZlcisxNjM3NiwgYi0+bG8zMl9jb250ZW50aWQpOworICAgIHNldGJl d29yZDMyKGJsb2NrYnVmZmVyKzE2MzgwLCBiLT5iYWNrdXBfc2VyaWFsX251bWJlcik7CiB9CiAK IGludCBoaW1kX3dyaXRlc3RyZWFtX3dyaXRlKHN0cnVjdCBoaW1kX3dyaXRlc3RyZWFtICogc3Ry ZWFtLCBzdHJ1Y3QgYmxvY2tpbmZvICogYXVkaW9ibG9jaywgc3RydWN0IGhpbWRlcnJpbmZvICpz dGF0dXMpCg== --=_gcmail5 Content-Type: application/octet-stream; name="0003-add-track-in-play-order-table-and-write-completed-track-info.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0003-add-track-in-play-order-table-and-write-completed-track-info.patch" ZGlmZiAtLWdpdCBhL2hpbWRkdW1wL2hpbWRkdW1wLmMgYi9oaW1kZHVtcC9oaW1kZHVtcC5jCmlu ZGV4IGMyMDllMmQuLmQxM2M3ZjggMTAwNjQ0Ci0tLSBhL2hpbWRkdW1wL2hpbWRkdW1wLmMKKysr IGIvaGltZGR1bXAvaGltZGR1bXAuYwpAQCAtNzY4LDcgKzc2OCw3IEBAIHZvaWQgaGltZF93cml0 ZW1wMyhzdHJ1Y3QgaGltZCAgKmgsIGNvbnN0IGNoYXIgKmZpbGVwYXRoKQogICAgIC8vCiAgICAg c3RydWN0IHRyYWNraW5mbyB0cmFjazsKIAotICAgIG1lbWNweSgmdHJhY2sua2V5LCBrZXksIDgp OworICAgIG1lbXNldCgmdHJhY2sua2V5LCAwLCA4KTsgLyogdXNlIHplcm8ga2V5IG9uIG1wMyBm aWxlcyAqLwogICAgIHRyYWNrLnRpdGxlICA9IGlkeF90aXRsZTsKICAgICB0cmFjay5hcnRpc3Qg PSBpZHhfYXJ0aXN0OwogICAgIHRyYWNrLmFsYnVtICA9IGlkeF9hbGJ1bTsKQEAgLTc4MCwxMiAr NzgwLDI1IEBAIHZvaWQgaGltZF93cml0ZW1wMyhzdHJ1Y3QgaGltZCAgKmgsIGNvbnN0IGNoYXIg KmZpbGVwYXRoKQogICAgIHRyYWNrLnNlY29uZHMgICAgICA9IGR1cmF0aW9uLnNlY29uZHM7CiAg ICAgbWVtc2V0KCZ0cmFjay5jb2RlY2luZm8sIDAsIDUpOwogICAgIHRyYWNrLmNvZGVjaW5mb1sw XSA9IDM7CisKKyAgICAvKiBmaWxlIGRlcGVuZGVudCBjb2RlYyBpbmZvcm1hdGlvbiwgdGhlc2Ug dmFsdWVzIGFyZSBmb3IgbXkgdGVzdCBtcDMgZmlsZSBvbmx5LCAqLworICAgIC8qIHZhbHVlcyBm ZXRjaGVkIGZyb20gdHJraWR4IGZpbGUgYnkgZG93bmxvYWRpbmcgdGhlIHNhbWUgbXAzIGZpbGUg d2l0aCBTb25pY1N0YWdlICovCisgICAgdHJhY2suY29kZWNpbmZvWzJdID0gMHhCMDsgLyogbXAz LCBzdGVyZW8sIDEyOGtiL3NANDRrMUh6ICovCisgICAgdHJhY2suY29kZWNpbmZvWzNdID0gMHhE OTsKKyAgICB0cmFjay5jb2RlY2luZm9bNF0gPSAweDEwOworCiAgICAgbWVtc2V0KCZ0cmFjay5t YWMsIDAsIDgpOwotICAgIG1lbXNldCgmdHJhY2suY29udGVudGlkLCAwLCAyMCk7CisgICAgbWVt Y3B5KCZ0cmFjay5jb250ZW50aWQsIGNpZCwgMjApOwogICAgIG1lbXNldCgmdHJhY2sucmVjb3Jk aW5ndGltZSwgMCwgc2l6ZW9mKHN0cnVjdCB0bSkpOwogICAgIG1lbXNldCgmdHJhY2suc3RhcnR0 aW1lLCAgICAgMCwgc2l6ZW9mKHN0cnVjdCB0bSkpOwogICAgIG1lbXNldCgmdHJhY2suZW5kdGlt ZSwgICAgICAgMCwgc2l6ZW9mKHN0cnVjdCB0bSkpOwogCisgICAgLyogc2V0IERSTSBzdHVmZiBj b3JyZWN0bHkgZm9yIGNvbXBhdGliaWxpdHkgcmVhc29ucyAqLworICAgIHRyYWNrLkx0ID0gMHgx MDsKKyAgICB0cmFjay5EZXN0ID0gMTsKKyAgICB0cmFjay5YY2MgPSAxOworICAgIHRyYWNrLkNj ID0gMHg0MDsKKwogICAgIGlkeF90cmFjayA9IGhpbWRfYWRkX3RyYWNrX2luZm8oaCwgJnRyYWNr LCAmc3RhdHVzKTsKICAgICAvLyBFTkQ6IEFkZCB0cmFjayBkZXNjcmlwdG9yCiAKZGlmZiAtLWdp dCBhL2xpYmhpbWQvaGltZC5oIGIvbGliaGltZC9oaW1kLmgKaW5kZXggZTBiMDU0Yi4uODg3ZjRh OSAxMDA2NDQKLS0tIGEvbGliaGltZC9oaW1kLmgKKysrIGIvbGliaGltZC9oaW1kLmgKQEAgLTgw LDYgKzgwLDEyIEBAIHN0cnVjdCB0cmFja2luZm8gewogICAgIHVuc2lnbmVkIGNoYXIgY29udGVu dGlkWzIwXTsKICAgICBpbnQgZWtibnVtOwogICAgIHN0cnVjdCB0bSByZWNvcmRpbmd0aW1lLCBz dGFydHRpbWUsIGVuZHRpbWU7CisgICAgY2hhciBMdDsKKyAgICBjaGFyIERlc3Q7CisgICAgY2hh ciBYY2M7CisgICAgY2hhciBDdDsKKyAgICBjaGFyIENjOworICAgIGNoYXIgQ247CiB9OwogCiAv KiBhIGZyYWdtZW50IGluIHRoZSBhdWRpbyBmaWxlICovCmRpZmYgLS1naXQgYS9saWJoaW1kL3Ry YWNraW5kZXguYyBiL2xpYmhpbWQvdHJhY2tpbmRleC5jCmluZGV4IDI5OTM1NTcuLmZmYzkwNWYg MTAwNjQ0Ci0tLSBhL2xpYmhpbWQvdHJhY2tpbmRleC5jCisrKyBiL2xpYmhpbWQvdHJhY2tpbmRl eC5jCkBAIC03Miw3ICs3Miw3IEBAIHN0YXRpYyB2b2lkIGRvc19zZXR0aW1lKHVuc2lnbmVkIGNo YXIgKiBidWZmZXIsIGNvbnN0IHN0cnVjdCB0bSAqIHRtKQogc3RhdGljIHZvaWQgc2V0dHJhY2so c3RydWN0IHRyYWNraW5mbyAqdCwgdW5zaWduZWQgY2hhciAqIHRyYWNrYnVmZmVyKQogewogICBk b3Nfc2V0dGltZSh0cmFja2J1ZmZlciswLCAgJnQtPnJlY29yZGluZ3RpbWUpOwotICBzZXRiZXdv cmQzMih0cmFja2J1ZmZlcis0LCAgMHgxMDAxMik7CisgIHNldGJld29yZDMyKHRyYWNrYnVmZmVy KzQsICB0LT5la2JudW0pOwogICBzZXRiZXdvcmQxNih0cmFja2J1ZmZlcis4LCAgdC0+dGl0bGUp OwogICBzZXRiZXdvcmQxNih0cmFja2J1ZmZlcisxMCwgdC0+YXJ0aXN0KTsKICAgc2V0YmV3b3Jk MTYodHJhY2tidWZmZXIrMTIsIHQtPmFsYnVtKTsKQEAgLTkyLDYgKzkyLDEyIEBAIHN0YXRpYyB2 b2lkIHNldHRyYWNrKHN0cnVjdCB0cmFja2luZm8gKnQsIHVuc2lnbmVkIGNoYXIgKiB0cmFja2J1 ZmZlcikKICAgbWVtY3B5KHRyYWNrYnVmZmVyKzQ4LCAgICAgIHQtPmNvbnRlbnRpZCwgMjApOwog ICBkb3Nfc2V0dGltZSh0cmFja2J1ZmZlcis2OCwgJnQtPnN0YXJ0dGltZSk7CiAgIGRvc19zZXR0 aW1lKHRyYWNrYnVmZmVyKzcyLCAmdC0+ZW5kdGltZSk7CisKKyAgLyogRFJNIHN0dWZmICovCisg IHRyYWNrYnVmZmVyWzQyXSA9IHQtPkx0OworICB0cmFja2J1ZmZlcls0M10gPSB0LT5EZXN0Owor ICB0cmFja2J1ZmZlcls3Nl0gPSB0LT5YY2M7CisgIHRyYWNrYnVmZmVyWzc4XSA9IHQtPkNjOwog fQogCiBzdGF0aWMgdm9pZCBzZXRmcmFnKHN0cnVjdCBmcmFnaW5mbyAqZiwgdW5zaWduZWQgY2hh ciAqIGZyYWdidWZmZXIpCkBAIC0xNjAsNiArMTY2LDcgQEAgaW50IGhpbWRfYWRkX3RyYWNrX2lu Zm8oc3RydWN0IGhpbWQgKiBoaW1kLCBzdHJ1Y3QgdHJhY2tpbmZvICogdCwgc3RydWN0IGhpbWRl cnIKICAgICBpbnQgaWR4X2ZyZWVzbG90OwogICAgIHVuc2lnbmVkIGNoYXIgKiBsaW5rYnVmZmVy OwogICAgIHVuc2lnbmVkIGNoYXIgKiB0cmFja2J1ZmZlcjsKKyAgICB1bnNpZ25lZCBjaGFyICog cGxheV9vcmRlcl90YWJsZSA9IGhpbWQtPnRpZmRhdGErMHgxMDA7CiAKICAgICBzdGF0dXMgPSBz dGF0dXM7CiAKQEAgLTE4MCw2ICsxODcsMTEgQEAgaW50IGhpbWRfYWRkX3RyYWNrX2luZm8oc3Ry dWN0IGhpbWQgKiBoaW1kLCBzdHJ1Y3QgdHJhY2tpbmZvICogdCwgc3RydWN0IGhpbWRlcnIKICAg ICAvKiBjb3B5IHRyYWNraW5mbyB0byBzbG90ICovCiAgICAgc2V0dHJhY2sodCwgdHJhY2tidWZm ZXIpOwogCisgICAgLyogaW5jcmVhc2UgdHJhY2sgY291bnQgKi8KKyAgICBzZXRiZXdvcmQxNihw bGF5X29yZGVyX3RhYmxlLCBoaW1kX3RyYWNrX2NvdW50KGhpbWQpKzEpOworCisgICAgLyogYWRk IGVudHJ5IGZvciBuZXcgdHJhY2sgaW4gcGxheSBvcmRlciB0YWJsZSAqLworICAgIHNldGJld29y ZDE2KHBsYXlfb3JkZXJfdGFibGUrMippZHhfZnJlZXNsb3QsIHQtPnRyYWNrbnVtKTsKICAgICBy ZXR1cm4gaWR4X2ZyZWVzbG90OwogfQo= --=_gcmail5 Content-Type: application/octet-stream; name="0004-set-string-encoding_correctly.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0004-set-string-encoding_correctly.patch" ZGlmZiAtLWdpdCBhL2hpbWRkdW1wL2hpbWRkdW1wLmMgYi9oaW1kZHVtcC9oaW1kZHVtcC5jCmlu ZGV4IGQxM2M3ZjguLjRiZDY5YTUgMTAwNjQ0Ci0tLSBhL2hpbWRkdW1wL2hpbWRkdW1wLmMKKysr IGIvaGltZGR1bXAvaGltZGR1bXAuYwpAQCAtMzgxLDcgKzM4MSw3IEBAIHZvaWQgaGltZF9kdW1w aG9sZXMoc3RydWN0IGhpbWQgKiBoKQogfQogCiAKLXZvaWQgZ2V0X3NvbmdpbmZvKGNvbnN0IGNo YXIgKmZpbGVwYXRoLCBnY2hhciAqKiBhcnRpc3QsIGdjaGFyICoqIHRpdGxlLCBnY2hhciAqKmFs YnVtKQordm9pZCBnZXRfc29uZ2luZm8oY29uc3QgY2hhciAqZmlsZXBhdGgsIHN0cnVjdCBlbmNz dHJpbmcgKmFydGlzdCwgc3RydWN0IGVuY3N0cmluZyAqdGl0bGUsIHN0cnVjdCBlbmNzdHJpbmcg KmFsYnVtKQogewogICAgIC8vICAgIHByaW50ZigiREJHOiBnZXRfc29uZ2luZm8oKVxuIik7CiAg ICAgc3RydWN0IGlkM19maWxlICogZmlsZTsKQEAgLTQwNSwxMyArNDA1LDEwIEBAIHZvaWQgZ2V0 X3NvbmdpbmZvKGNvbnN0IGNoYXIgKmZpbGVwYXRoLCBnY2hhciAqKiBhcnRpc3QsIGdjaGFyICoq IHRpdGxlLCBnY2hhciAqCiAJewogCSAgICBpZihpZDNfZmllbGRfZ2V0bnN0cmluZ3MoZmllbGQp ID4gMCkKIAkJewotCQkgICAgLy9wcmludGYoIkRCRzogZm91bmQgYXJ0aXN0XG4iKTsKLQkJICAg IGdjaGFyICp1dGY4ID0gTlVMTDsKLQotCQkgICAgdXRmOCA9IChnY2hhciopIGlkM191Y3M0X3V0 ZjhkdXBsaWNhdGUoIGlkM19maWVsZF9nZXRzdHJpbmdzKGZpZWxkLDApKTsKLQkJICAgICphcnRp c3QgPSB1dGY4OwotCQkgICAgLy8gZml4OiB1dGY4IGJ1ZmZlcgotCisgICAgICAgICAgICAgICAg ICAgIC8vcHJpbnRmKCJEQkc6IGZvdW5kIGFydGlzdFxuIik7CisgICAgICAgICAgICAgICAgICAg IGFydGlzdC0+c3RyaW5nID0gKGdjaGFyKikgaWQzX3VjczRfdXRmOGR1cGxpY2F0ZSggaWQzX2Zp ZWxkX2dldHN0cmluZ3MoZmllbGQsMCkpOworICAgICAgICAgICAgICAgICAgICBhcnRpc3QtPmVu Y29kaW5nID0gSElNRF9FTkNPRElOR19MQVRJTjE7CisgICAgICAgICAgICAgICAgICAgIGFydGlz dC0+bXVzdF9mcmVlID0gVFJVRTsgLyogcmVtZW1iZXIgdG8gZnJlZSBpdCB3aXRoIGdfZnJlZSgp ICovCiAJCX0KIAl9CiAKQEAgLTQyMiwxMSArNDE5LDkgQEAgdm9pZCBnZXRfc29uZ2luZm8oY29u c3QgY2hhciAqZmlsZXBhdGgsIGdjaGFyICoqIGFydGlzdCwgZ2NoYXIgKiogdGl0bGUsIGdjaGFy ICoKIAkgICAgaWYoaWQzX2ZpZWxkX2dldG5zdHJpbmdzKGZpZWxkKSA+IDApCiAJCXsKIAkJICAg IC8vCQkgICAgcHJpbnRmKCJEQkc6IGZvdW5kIHRpdGxlXG4iKTsKLQkJICAgIGdjaGFyICp1dGY4 ID0gTlVMTDsKLQotCQkgICAgdXRmOCA9IChnY2hhciopIGlkM191Y3M0X3V0ZjhkdXBsaWNhdGUo IGlkM19maWVsZF9nZXRzdHJpbmdzKGZpZWxkLDApKTsKLQkJICAgICp0aXRsZSA9IHV0Zjg7Ci0J CSAgICAvLyBmaXg6IHV0ZjggYnVmZmVyCisgICAgICAgICAgICAgICAgICAgIHRpdGxlLT5zdHJp bmcgPSAoZ2NoYXIqKSBpZDNfdWNzNF91dGY4ZHVwbGljYXRlKCBpZDNfZmllbGRfZ2V0c3RyaW5n cyhmaWVsZCwwKSk7CisgICAgICAgICAgICAgICAgICAgIHRpdGxlLT5lbmNvZGluZyA9IEhJTURf RU5DT0RJTkdfTEFUSU4xOworICAgICAgICAgICAgICAgICAgICB0aXRsZS0+bXVzdF9mcmVlID0g VFJVRTsgLyogcmVtZW1iZXIgdG8gZnJlZSBpdCB3aXRoIGdfZnJlZSgpICovCiAJCX0KIAl9CiAK QEAgLTQzNywxMiArNDMyLDEwIEBAIHZvaWQgZ2V0X3NvbmdpbmZvKGNvbnN0IGNoYXIgKmZpbGVw YXRoLCBnY2hhciAqKiBhcnRpc3QsIGdjaGFyICoqIHRpdGxlLCBnY2hhciAqCiAJICAgIGlmKGlk M19maWVsZF9nZXRuc3RyaW5ncyhmaWVsZCkgPiAwKQogCQl7CiAJCSAgICAvL3ByaW50ZigiREJH OiBmb3VuZCBhbGJ1bVxuIik7Ci0JCSAgICBnY2hhciAqdXRmOCA9IE5VTEw7Ci0KLQkJICAgIHV0 ZjggPSAoZ2NoYXIqKSBpZDNfdWNzNF91dGY4ZHVwbGljYXRlKCBpZDNfZmllbGRfZ2V0c3RyaW5n cyhmaWVsZCwwKSk7Ci0JCSAgICAqYWxidW0gPSB1dGY4OwotCQkgICAgLy8gZml4OiB1dGY4IGJ1 ZmZlcgotCQl9CisgICAgICAgICAgICAgICAgICAgIGFsYnVtLT5zdHJpbmcgPSAoZ2NoYXIqKSBp ZDNfdWNzNF91dGY4ZHVwbGljYXRlKCBpZDNfZmllbGRfZ2V0c3RyaW5ncyhmaWVsZCwwKSk7Cisg ICAgICAgICAgICAgICAgICAgIGFsYnVtLT5lbmNvZGluZyA9IEhJTURfRU5DT0RJTkdfTEFUSU4x OworICAgICAgICAgICAgICAgICAgICBhbGJ1bS0+bXVzdF9mcmVlID0gVFJVRTsgLyogcmVtZW1i ZXIgdG8gZnJlZSBpdCB3aXRoIGdfZnJlZSgpICovCisgICAgICAgICAgICAgICAgfQogCX0KIAog ICAgIGlkM19maWxlX2Nsb3NlKGZpbGUpOwpAQCAtNjU3LDcgKzY1MCw3IEBAIHZvaWQgaGltZF93 cml0ZW1wMyhzdHJ1Y3QgaGltZCAgKmgsIGNvbnN0IGNoYXIgKmZpbGVwYXRoKQogICAgIEdNYXBw ZWRGaWxlICogbXAzZmlsZTsKICAgICB1bnNpZ25lZCBsb25nIG1wM3NpemU7CiAgICAgZ2NoYXIg KiBtcDNidWZmZXI7Ci0gICAgZ2NoYXIgKiBhcnRpc3Q9TlVMTCwgKiB0aXRsZT1OVUxMLCAqIGFs YnVtPU5VTEw7CisgICAgc3RydWN0IGVuY3N0cmluZyB0aXRsZSA9e05VTEwsMCwgRkFMU0V9LCBh cnRpc3QgPXtOVUxMLDAsIEZBTFNFfSwgYWxidW0gPXtOVUxMLDAsRkFMU0V9OwogICAgIGludCBp OwogICAgIHVuc2lnbmVkIGNoYXIgY2lkWzIwXSA9IHsweDAyLCAweDAzLCAweDAwLCAweDAwfTsK IApAQCAtNzMwLDM2ICs3MjMsMzUgQEAgdm9pZCBoaW1kX3dyaXRlbXAzKHN0cnVjdCBoaW1kICAq aCwgY29uc3QgY2hhciAqZmlsZXBhdGgpCiAgICAgaWR4X2ZyYWcgID0gaGltZF9hZGRfZnJhZ21l bnRfaW5mbyhoLCAmZnJhZ21lbnQsICZzdGF0dXMpOwogICAgIC8vIEVORDogQWRkIGZyYWdtZW50 CiAKLSAgICAvLyBBZGQgc3RyaW5ncyBmb3IgdGl0bGUsIGFsYnVtIGFuZCBhcnRpc3Qgc3RyaW5n cy4gUmV0cmlldmUgc3RyaW5nIGluZGV4IG51bWJlcnMuCisgICAgLy8gQWRkIHN0cmluZ3MgZm9y IHRpdGxlLCBhbGJ1bSBhbmQgYXJ0aXN0LiBSZXRyaWV2ZSBzdHJpbmcgaW5kZXggbnVtYmVycy4K KyAgICAvLyBEbyBub3QgY2FsbCBleGl0KCkgb24gZXJyb3JzIGhlcmUsIGF1ZGlvIGRhdGEgaXMg YWxyZWFkeSBzdG9yZWQgaW4gYXRkYXRhIGZpbGUgc28gd2UgaGF2ZSB0bworICAgIC8vIGZpbmlz aCB3cml0aW5nIGRhdGEgdG8gdHJraWR4IGZpbGUgdG8gbm90IG1ha2UgdGhlIGRpc2MgdXNlbGVz cy4KICAgICBnaW50IGlkeF90aXRsZT0wLCBpZHhfYWxidW09MCwgaWR4X2FydGlzdD0wOwogCi0g ICAgaWYodGl0bGUgIT0gTlVMTCkgewotCWlkeF90aXRsZSAgPSBoaW1kX2FkZF9zdHJpbmcoaCwg dGl0bGUsIFNUUklOR19UWVBFX1RJVExFLCBzdHJsZW4odGl0bGUpKzEsICZzdGF0dXMpOwotCWlm KGlkeF90aXRsZSA8IDApCi0JICAgIHsKLQkJcHJpbnRmKCJGYWlsZWQgdG8gYWRkIHRpdGxlIHN0 cmluZ1xuIik7Ci0JCWV4aXQoMSk7Ci0JICAgIH0KKyAgICBpZih0aXRsZS5zdHJpbmcgPT0gTlVM TCkgIC8qIHJlc2VydmUgc3RyaW5nIHNsb3QgZm9yIHVuYW1lZCB0cmFja3MgKi8KKyAgICB7Cisg ICAgICAgIHRpdGxlLnN0cmluZyA9ICIiOworICAgICAgICB0aXRsZS5lbmNvZGluZyA9IEhJTURf RU5DT0RJTkdfTEFUSU4xOwogICAgIH0KKyAgICBpZHhfdGl0bGUgID0gaGltZF9hZGRfc3RyaW5n KGgsICZ0aXRsZSwgU1RSSU5HX1RZUEVfVElUTEUsICZzdGF0dXMpOworICAgIGlmKGlkeF90aXRs ZSA8IDApIHByaW50ZigiRmFpbGVkIHRvIGFkZCB0aXRsZSBzdHJpbmc6ICVzXG4iLCBzdGF0dXMu c3RhdHVzbXNnKTsKIAotICAgIGlmKGFsYnVtICE9IE5VTEwpIHsKLQlwcmludGYoImhlbGxvXG4i KTsKLQlpZHhfYWxidW0gID0gaGltZF9hZGRfc3RyaW5nKGgsIGFsYnVtLCBTVFJJTkdfVFlQRV9B TEJVTSwgICBzdHJsZW4oYWxidW0pKzEsICZzdGF0dXMpOwotCWlmKGlkeF9hbGJ1bSA8IDApCi0J ICAgIHsKLQkJcHJpbnRmKCJGYWlsZWQgdG8gYWRkIGFsYnVtIHN0cmluZ1xuIik7Ci0JCWV4aXQo MSk7Ci0JICAgIH0KKyAgICBpZihhbGJ1bS5zdHJpbmcgPT0gTlVMTCkgIC8qIHJlc2VydmUgc3Ry aW5nIHNsb3QgZm9yIHVuYW1lZCB0cmFja3MgKi8KKyAgICB7CisgICAgICAgIGFsYnVtLnN0cmlu ZyA9ICIiOworICAgICAgICBhbGJ1bS5lbmNvZGluZyA9IEhJTURfRU5DT0RJTkdfTEFUSU4xOwog ICAgIH0KKyAgICBpZHhfYWxidW0gID0gaGltZF9hZGRfc3RyaW5nKGgsICZhbGJ1bSwgU1RSSU5H X1RZUEVfQUxCVU0sICZzdGF0dXMpOworICAgIGlmKGlkeF9hbGJ1bSA8IDApIHByaW50ZigiRmFp bGVkIHRvIGFkZCBhbGJ1bSBzdHJpbmc6ICVzXG4iLCBzdGF0dXMuc3RhdHVzbXNnKTsKIAotICAg IGlmKGFydGlzdCAhPSBOVUxMKSB7Ci0JaWR4X2FydGlzdCA9IGhpbWRfYWRkX3N0cmluZyhoLCBh cnRpc3QsIFNUUklOR19UWVBFX0FSVElTVCwgc3RybGVuKGFydGlzdCkrMSwgJnN0YXR1cyk7Ci0J aWYoaWR4X2FydGlzdCA8IDApCi0JICAgIHsKLQkJcHJpbnRmKCJGYWlsZWQgdG8gYWRkIGFydGlz dCBzdHJpbmdcbiIpOwotCQlleGl0KDEpOwotCSAgICB9CisgICAgaWYoYXJ0aXN0LnN0cmluZyA9 PSBOVUxMKSAgLyogcmVzZXJ2ZSBzdHJpbmcgc2xvdCBmb3IgdW5hbWVkIHRyYWNrcyAqLworICAg IHsKKyAgICAgICAgYXJ0aXN0LnN0cmluZyA9ICIiOworICAgICAgICBhcnRpc3QuZW5jb2Rpbmcg PSBISU1EX0VOQ09ESU5HX0xBVElOMTsKICAgICB9CisgICAgaWR4X2FydGlzdCA9IGhpbWRfYWRk X3N0cmluZyhoLCAmYXJ0aXN0LCBTVFJJTkdfVFlQRV9BUlRJU1QsICZzdGF0dXMpOworICAgIGlm KGlkeF9hcnRpc3QgPCAwKSBwcmludGYoIkZhaWxlZCB0byBhZGQgYXJ0aXN0IHN0cmluZzogJXNc biIsIHN0YXR1cy5zdGF0dXNtc2cpOworCiAgICAgLy8gICAgcHJpbnRmKCJEQkc6IGlkeF90aXRs ZTogJWQsIGlkeF9hbGJ1bTogJWQsIGlkeF9hcnRpc3Q6ICVkXG4iLCBpZHhfdGl0bGUsIGlkeF9h bGJ1bSwgaWR4X2FydGlzdCk7CiAgICAgLy8gRU5EOiBBZGQgc3RyaW5ncwogCkBAIC04MDYsNyAr Nzk4LDkgQEAgdm9pZCBoaW1kX3dyaXRlbXAzKHN0cnVjdCBoaW1kICAqaCwgY29uc3QgY2hhciAq ZmlsZXBhdGgpCiAgICAgLy8gVXBkYXRlIFRSQUNLLUlOREVYIGZpbGUgd2l0aCB0cmFjayBzdHJp bmdzLCBmcmFnbWVudCBkZXNjcmlwdG9yIGFuZCB0cmFjay1kZXNjcmlwdG9yLgogICAgIC8vCiAg ICAgaGltZF93cml0ZV90aWZkYXRhKGgsICZzdGF0dXMpOwotICAgIC8vICAgIGZyZWUoYXJ0aXN0 KTsgZnJlZShhbGJ1bSk7IGZyZWUodGl0bGUpOworICAgIGlmKHRpdGxlLm11c3RfZnJlZSkgZ19m cmVlKHRpdGxlLnN0cmluZyk7CisgICAgaWYoYXJ0aXN0Lm11c3RfZnJlZSkgZ19mcmVlKGFydGlz dC5zdHJpbmcpOworICAgIGlmKGFsYnVtLm11c3RfZnJlZSkgZ19mcmVlKGFsYnVtLnN0cmluZyk7 CiB9CiAKIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqIGFyZ3YpCmRpZmYgLS1naXQgYS9saWJo aW1kL2hpbWQuaCBiL2xpYmhpbWQvaGltZC5oCmluZGV4IDg4N2Y0YTkuLmE4NzM4NTQgMTAwNjQ0 Ci0tLSBhL2xpYmhpbWQvaGltZC5oCisrKyBiL2xpYmhpbWQvaGltZC5oCkBAIC0xMjYsNiArMTI2 LDEyIEBAIHN0cnVjdCBoaW1kc3RyaW5nIHsKICAgICB1bnNpZ25lZCBpbnQgbmV4dHN0cmluZyA6 IDEyOwogfTsKIAorc3RydWN0IGVuY3N0cmluZyB7CisgICAgY2hhciAqIHN0cmluZzsKKyAgICB1 bnNpZ25lZCBpbnQgZW5jb2Rpbmc7CisgICAgaW50IG11c3RfZnJlZTsKK307CisKIHN0cnVjdCBo aW1kIHsKICAgICAvKiBldmVyeXRoaW5nIGJlbG93IHRoaXMgbGluZSBpcyBwcml2YXRlLCBpLmUu IG5vIEFQSSBzdGFiaWxpdHkuICovCiAgICAgY2hhciAqIHJvb3RwYXRoOwpAQCAtMTQ1LDcgKzE1 MSw3IEBAIGludCBoaW1kX29wZW4oc3RydWN0IGhpbWQgKiBoaW1kLCBjb25zdCBjaGFyICogaGlt ZHJvb3QsIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0CiB2b2lkIGhpbWRfY2xvc2Uoc3RydWN0IGhp bWQgKiBoaW1kKTsKIGNoYXIqIGhpbWRfZ2V0X3N0cmluZ19yYXcoc3RydWN0IGhpbWQgKiBoaW1k LCB1bnNpZ25lZCBpbnQgaWR4LCBpbnQqdHlwZSwgaW50KiBsZW5ndGgsIHN0cnVjdCBoaW1kZXJy aW5mbyAqIHN0YXR1cyk7CiBjaGFyKiBoaW1kX2dldF9zdHJpbmdfdXRmOChzdHJ1Y3QgaGltZCAq IGhpbWQsIHVuc2lnbmVkIGludCBpZHgsIGludCp0eXBlLCBzdHJ1Y3QgaGltZGVycmluZm8gKiBz dGF0dXMpOwotaW50IGhpbWRfYWRkX3N0cmluZyhzdHJ1Y3QgaGltZCAqIGhpbWQsIGNoYXIgKnN0 cmluZywgaW50IHR5cGUsIGludCBsZW5ndGgsIHN0cnVjdCBoaW1kZXJyaW5mbyAqIHN0YXR1cyk7 CitpbnQgaGltZF9hZGRfc3RyaW5nKHN0cnVjdCBoaW1kICogaGltZCwgc3RydWN0IGVuY3N0cmlu ZyAqc3RyaW5nLCBpbnQgdHlwZSwgc3RydWN0IGhpbWRlcnJpbmZvICogc3RhdHVzKTsKIHZvaWQg aGltZF9mcmVlKHZvaWQgKiBwKTsKIGNvbnN0IHVuc2lnbmVkIGNoYXIgKiBoaW1kX2dldF9kaXNj aWQoc3RydWN0IGhpbWQgKiBoaW1kLCBzdHJ1Y3QgaGltZGVycmluZm8gKiBzdGF0dXMpOwogRklM RSAqIGhpbWRfb3Blbl9maWxlKHN0cnVjdCBoaW1kICogaGltZCwgY29uc3QgY2hhciAqIGZpbGVp ZCk7CmRpZmYgLS1naXQgYS9saWJoaW1kL3RyYWNraW5kZXguYyBiL2xpYmhpbWQvdHJhY2tpbmRl eC5jCmluZGV4IGZmYzkwNWYuLmQ0OTg3NTYgMTAwNjQ0Ci0tLSBhL2xpYmhpbWQvdHJhY2tpbmRl eC5jCisrKyBiL2xpYmhpbWQvdHJhY2tpbmRleC5jCkBAIC00NDMsMzggKzQ0MywzMCBAQCBjaGFy KiBoaW1kX2dldF9zdHJpbmdfdXRmOChzdHJ1Y3QgaGltZCAqIGhpbWQsIHVuc2lnbmVkIGludCBp ZHgsIGludCp0eXBlLCBzdHJ1YwogfQogCiAKLWludCBoaW1kX2FkZF9zdHJpbmcoc3RydWN0IGhp bWQgKiBoaW1kLCBjaGFyICpzdHJpbmcsIGludCB0eXBlLCBpbnQgbGVuZ3RoLCBzdHJ1Y3QgaGlt ZGVycmluZm8gKiBzdGF0dXMpCitpbnQgaGltZF9hZGRfc3RyaW5nKHN0cnVjdCBoaW1kICogaGlt ZCwgc3RydWN0IGVuY3N0cmluZyAqc3RyaW5nLCBpbnQgdHlwZSwgc3RydWN0IGhpbWRlcnJpbmZv ICogc3RhdHVzKQogewogICAgIGludCBjdXJpZHgsIGxhc3RpZHg7CiAgICAgaW50IHN0cmlkeCwg ZW5kX3N0cmlkeDsKICAgICBpbnQgbnNsb3RzPTAsIHJlc3Q9MDsKICAgICBpbnQgaWR4X2ZyZWVz bG90OworICAgIGludCBsZW5ndGg7CiAgICAgdW5zaWduZWQgY2hhciAqIGxpbmtjaHVuazsKICAg ICB1bnNpZ25lZCBjaGFyICogZnJlZXNsb3Q7CiAgICAgdW5zaWduZWQgY2hhciAqIGN1cmNodW5r OwogCi0gICAgY29uc3QgY2hhciAqIGN1cnJlbnRfY2hhcnNldDsKLSAgICBpbnQgc3RyZW5jb2Rp bmc9MDsKLQogICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKGhpbWQgIT0gTlVMTCwgLTEpOwotICAg IGdfcmV0dXJuX3ZhbF9pZl9mYWlsKHN0cmluZyAhPSBOVUxMLCAtMSk7CisgICAgZ19yZXR1cm5f dmFsX2lmX2ZhaWwoc3RyaW5nICE9IE5VTEwgJiYgc3RyaW5nLT5zdHJpbmcgIT0gTlVMTCwgLTEp OwogCisgICAgaWYoc3RyaW5nLT5lbmNvZGluZyAhPSBISU1EX0VOQ09ESU5HX0xBVElOMSAmJiBz dHJpbmctPmVuY29kaW5nICE9IEhJTURfRU5DT0RJTkdfVVRGMTZCRSAmJgorICAgICAgIHN0cmlu Zy0+ZW5jb2RpbmcgIT0gSElNRF9FTkNPRElOR19TSElGVF9KSVMpCisgICAgICAgICAgIHNldF9z dGF0dXNfY29uc3Qoc3RhdHVzLCBISU1EX0VSUk9SX1VOS05PV05fRU5DT0RJTkcsICJ1bmtub3du IGVuY29kaW5nIik7CiAKLSAgICBpZihnX2dldF9jaGFyc2V0KCZjdXJyZW50X2NoYXJzZXQpKQot CXN0cmVuY29kaW5nID0gSElNRF9FTkNPRElOR19MQVRJTjE7Ci0gICAgZWxzZSBpZihnX2FzY2lp X3N0cm5jYXNlY21wKGN1cnJlbnRfY2hhcnNldCwgIlVURjE2QkUiLCA3KSA9PSAwKQotCXN0cmVu Y29kaW5nID0gSElNRF9FTkNPRElOR19VVEYxNkJFOwotICAgIGVsc2UgaWYoZ19hc2NpaV9zdHJu Y2FzZWNtcChjdXJyZW50X2NoYXJzZXQsICJTSElGVF9KSVMiLCA5KSA9PSAwKQotCXN0cmVuY29k aW5nID0gSElNRF9FTkNPRElOR19TSElGVF9KSVM7Ci0gICAgZWxzZQotCXNldF9zdGF0dXNfcHJp bnRmKHN0YXR1cywgSElNRF9FUlJPUl9VTktOT1dOX0VOQ09ESU5HLAotCQkJICAidW5rbm93biBl bmNvZGluZyIpOwogCiAgICAgLyogaG93IG1hbnkgbnVtYmVyIG9mIHNsb3RzIHRvIHN0b3JlIHN0 cmluZyBpbj8gKi8KIAotICAgIGlmKGxlbmd0aCA8PSAxMykKLQl7Ci0JICAgIG5zbG90cyA9IDE7 CisgICAgaWYoKGxlbmd0aCA9IHN0cmxlbihzdHJpbmctPnN0cmluZykpIDw9IDEzKSAvKiBub3Qg c3RybGVuKHN0cmluZy0+c3RyaW5nKSsxIGJlY2F1c2Ugd2UgZG8gbm90ICovCisgICAgICAgIHsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuZWVkIHRoZSB0ZXJtaW5h dGluZyAvMCAqLworICAgICAgICAgICAgbnNsb3RzID0gMTsKIAl9CiAgICAgZWxzZSBpZihsZW5n dGggPiAxMykKIAl7CkBAIC01MTQsMTAgKzUwNiwxMCBAQCBpbnQgaGltZF9hZGRfc3RyaW5nKHN0 cnVjdCBoaW1kICogaGltZCwgY2hhciAqc3RyaW5nLCBpbnQgdHlwZSwgaW50IGxlbmd0aCwgc3Ry dQogICAgIGlmKGxlbmd0aCA8PSAxMykKIAl7CiAJICAgIGN1cmNodW5rICAgID0gZ2V0X3N0cmNo dW5rKGhpbWQsIGN1cmlkeCk7Ci0JICAgIGN1cmNodW5rWzBdID0gc3RyZW5jb2Rpbmc7CisgICAg ICAgICAgICBjdXJjaHVua1swXSA9IHN0cmluZy0+ZW5jb2Rpbmc7CiAKIAkgICAgc2V0YmV3b3Jk MTYoJmN1cmNodW5rWzE0XSwgKHR5cGUgPDwgMTIpICsgMHgwMCk7ICAgICAgLy8gdHlwZSB8IDAw Ci0JICAgIG1lbWNweShjdXJjaHVuaysxLCAmc3RyaW5nWzBdLCBsZW5ndGgpOworICAgICAgICAg ICAgbWVtY3B5KGN1cmNodW5rKzEsIHN0cmluZy0+c3RyaW5nLCBsZW5ndGgpOwogCiAJICAgIHJl dHVybiBpZHhfZnJlZXNsb3Q7CiAJfQpAQCAtNTI5LDEwICs1MjEsMTAgQEAgaW50IGhpbWRfYWRk X3N0cmluZyhzdHJ1Y3QgaGltZCAqIGhpbWQsIGNoYXIgKnN0cmluZywgaW50IHR5cGUsIGludCBs ZW5ndGgsIHN0cnUKIAkgICAgICAgbnNsb3RzID4gMSAmJiAgKHJlc3QgPT0gMCB8fCByZXN0ID4g MCkKIAkgICAgKi8KIAkgICAgY3VyY2h1bmsgICAgPSBnZXRfc3RyY2h1bmsoaGltZCwgY3VyaWR4 KTsKLQkgICAgY3VyY2h1bmtbMF0gPSBzdHJlbmNvZGluZzsKKyAgICAgICAgICAgIGN1cmNodW5r WzBdID0gc3RyaW5nLT5lbmNvZGluZzsKIAogCSAgICBzZXRiZXdvcmQxNigmY3VyY2h1bmtbMTRd LCAodHlwZSA8PCAxMikgKyAoY3VyaWR4KzEpKTsgICAgICAvLyB0eXBlIHwgbG5rCi0JICAgIG1l bWNweShjdXJjaHVuaysxLCAmc3RyaW5nWzBdLCAxMyk7CisgICAgICAgICAgICBtZW1jcHkoY3Vy Y2h1bmsrMSwgc3RyaW5nLT5zdHJpbmcsIDEzKTsKIAogCSAgICBjdXJpZHggICArPSAxOwogCSAg ICBzdHJpZHggICArPSAxOwpAQCAtNTQ3LDEyICs1MzksMTIgQEAgaW50IGhpbWRfYWRkX3N0cmlu ZyhzdHJ1Y3QgaGltZCAqIGhpbWQsIGNoYXIgKnN0cmluZywgaW50IHR5cGUsIGludCBsZW5ndGgs IHN0cnUKIAkgICAgaWYoY3VyaWR4ID09IGxhc3RpZHgpCiAJCXsKIAkJICAgIHNldGJld29yZDE2 KCZjdXJjaHVua1sxNF0sIChTVFJJTkdfVFlQRV9DT05USU5VQVRJT04gPDwgMTIpICsgMCk7ICAg ICAgLy8gdHlwZSB8IGxuawotCQkgICAgbWVtY3B5KGN1cmNodW5rLCAmc3RyaW5nW3N0cmlkeCox NF0sIChyZXN0ID09IDAgPyAxNCA6IHJlc3QpICk7CisgICAgICAgICAgICAgICAgICAgIG1lbWNw eShjdXJjaHVuaywgc3RyaW5nLT5zdHJpbmcrc3RyaWR4KjE0LCAocmVzdCA9PSAwID8gMTQgOiBy ZXN0KSApOwogCQkgICAgYnJlYWs7CiAJCX0KIAogCSAgICBzZXRiZXdvcmQxNigmY3VyY2h1bmtb MTRdLCAoU1RSSU5HX1RZUEVfQ09OVElOVUFUSU9OIDw8IDEyKSsoY3VyaWR4KzEpKTsgICAgICAv LyB0eXBlIHwgbG5rCi0JICAgIG1lbWNweShjdXJjaHVuaywgJnN0cmluZ1tzdHJpZHgqMTRdLCAx NCk7CisgICAgICAgICAgICBtZW1jcHkoY3VyY2h1bmssIHN0cmluZy0+c3RyaW5nK3N0cmlkeCox NCwgMTQpOwogCX0KIAogICAgIHJldHVybiBpZHhfZnJlZXNsb3Q7Cg== --=_gcmail5 Content-Type: application/octet-stream; name="0005-add-linker-flags-for-windows-libraries.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0005-add-linker-flags-for-windows-libraries.patch" ZGlmZiAtLWdpdCBhL2hpbWRkdW1wL2hpbWRkdW1wLnBybyBiL2hpbWRkdW1wL2hpbWRkdW1wLnBy bwppbmRleCAzMTE0YmM5Li4wNzM2NDEzIDEwMDY0NAotLS0gYS9oaW1kZHVtcC9oaW1kZHVtcC5w cm8KKysrIGIvaGltZGR1bXAvaGltZGR1bXAucHJvCkBAIC0yLDYgKzIsNyBAQCBURU1QTEFURT1h cHAKIENPTkZJRyAgLT0gcXQKIENPTkZJRyAgKz0gY29uc29sZSBsaW5rX3BrZ2NvbmZpZyBsaW5r X3BybAogUEtHQ09ORklHICs9IGdsaWItMi4wIGlkM3RhZword2luMzI6TElCUyArPSAtbGlkM3Rh ZyAtbHoKIElOQ0xVREVQQVRIICs9IC4uL2xpYmhpbWQKIFNPVVJDRVMgKz0gaGltZGR1bXAuYwo= --=_gcmail5 Content-Type: application/octet-stream; name="0006-use-zero--fragment-key.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0006-use-zero--fragment-key.patch" ZGlmZiAtLWdpdCBhL2hpbWRkdW1wL2hpbWRkdW1wLmMgYi9oaW1kZHVtcC9oaW1kZHVtcC5jCmlu ZGV4IDRiZjc4ODIuLjk0NjgyYzIgMTAwNjQ0Ci0tLSBhL2hpbWRkdW1wL2hpbWRkdW1wLmMKKysr IGIvaGltZGR1bXAvaGltZGR1bXAuYwpAQCAtNzE0LDcgKzcxNCw3IEBAIHZvaWQgaGltZF93cml0 ZW1wMyhzdHJ1Y3QgaGltZCAgKmgsIGNvbnN0IGNoYXIgKmZpbGVwYXRoKQogCiAgICAgZnJhZ21l bnQuZmlyc3RibG9jayA9IGZpcnN0X2Jsb2Nrbm87CiAgICAgZnJhZ21lbnQubGFzdGJsb2NrICA9 IGxhc3RfYmxvY2tubzsKLSAgICBtZW1jcHkoJmZyYWdtZW50LmtleVswXSwga2V5LCA4KTsKKyAg ICBtZW1zZXQoJmZyYWdtZW50LmtleVswXSwgMCwgOCk7IC8qIHVzZSB6ZXJvIGtleSBvbiBtcDMg ZmlsZXMgKi8KICAgICBmcmFnbWVudC5maXJzdGZyYW1lID0gMDsKICAgICBmcmFnbWVudC5sYXN0 ZnJhbWUgID0gbmZyYW1lczsKICAgICBmcmFnbWVudC5mcmFndHlwZSAgID0gMTsK --=_gcmail5-- From linux-minidisc@lists.fu-berlin.de Thu Mar 31 01:01:04 2011 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Q54Nr-0000Xt-Dy>; Thu, 31 Mar 2011 01:01:03 +0200 Received: from mail-forward1.uio.no ([129.240.10.70]) by relay1.zedat.fu-berlin.de (Exim 4.69) for linux-minidisc@lists.fu-berlin.de with esmtp (envelope-from ) id <1Q54Nr-0007gt-96>; Thu, 31 Mar 2011 01:01:03 +0200 Received: from exim by mail-out1.uio.no with local-bsmtp (Exim 4.72) (envelope-from ) id 1Q54Nq-0008Vf-PT for linux-minidisc@lists.fu-berlin.de; Thu, 31 Mar 2011 01:01:02 +0200 Received: from mail-mx2.uio.no ([129.240.10.30]) by mail-out1.uio.no with esmtp (Exim 4.72) (envelope-from ) id 1Q54Nq-0008Vc-OO for linux-minidisc@lists.fu-berlin.de; Thu, 31 Mar 2011 01:01:02 +0200 Received: from div-8021x-dhcp077.uio.no ([193.157.176.86] helo=sulphur) by mail-mx2.uio.no with esmtps (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Q54Nq-0003YI-Bl for linux-minidisc@lists.fu-berlin.de; Thu, 31 Mar 2011 01:01:02 +0200 Received: from mkarcher by sulphur with local (Exim 4.72) (envelope-from ) id 1Q54Nq-0003TC-2q for linux-minidisc@lists.fu-berlin.de; Thu, 31 Mar 2011 01:01:02 +0200 Date: Thu, 31 Mar 2011 01:01:02 +0200 Message-Id: To: linux-minidisc@lists.fu-berlin.de Content-Type: text/plain; charset=utf-8 X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 44b39d691772390fa8b602a8196c172e9f9f3920 X-Git-Newrev: 3b8b4a2babcfc463a843af12247ddfbe3c79d3c1 From: Michael Karcher X-UiO-Spam-info: not spam, SpamAssassin (score=0.0, required=5.0, autolearn=disabled, FSL_HELO_NON_FQDN_1=0.001, HELO_NO_DOMAIN=0.001, uiobl=NO, uiouri=NO) X-UiO-Scanned: 62D8456C2C5B69460DC56209B15F86837A1C91B0 X-UiO-SPAM-Test: remote_host: 193.157.176.86 spam_score: 0 maxlevel 80 minaction 2 bait 0 mail/h: 1 total 46 max/h 3 blacklist 0 greylist 0 ratelimit 0 X-Originating-IP: 129.240.10.70 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1301526063-00005A17-BD460AD6/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.2 X-Spam-Flag: NO X-Spam-Checker-Version: SpamAssassin 3.0.4 on Dschibuti.ZEDAT.-Berlin.DE X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none Subject: [linux-minidisc] [commit] Linux utilities to deal with Sony Minidisc Walkman branch, master, updated. 0.1.0-1-g3b8b4a2 X-BeenThere: linux-minidisc@lists.fu-berlin.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: Mailing list for the linux-minidisc project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Mar 2011 23:01:04 -0000 This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Linux utilities to deal with Sony Minidisc Walkman". The branch, master has been updated via 3b8b4a2babcfc463a843af12247ddfbe3c79d3c1 (commit) from 44b39d691772390fa8b602a8196c172e9f9f3920 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3b8b4a2babcfc463a843af12247ddfbe3c79d3c1 Author: Michael Karcher Date: Thu Mar 31 01:00:54 2011 +0200 Use non-encumbered keys for NetMD ----------------------------------------------------------------------- Summary of changes: netmd/downloadhack.py | 13 +++++++------ 1 files changed, 7 insertions(+), 6 deletions(-) hooks/post-receive -- Linux utilities to deal with Sony Minidisc Walkman