SF.net SVN: jrpm: [10] trunk
[email protected] Thu, 02 Mar 2006 07:25:02 -0800
| Newsgroups | gmane.comp.java.jrpm.devel |
|---|---|
| Message-ID | <[email protected]> |
Revision: 10
Author: ymenager
Date: 2006-03-02 07:24:43 -0800 (Thu, 02 Mar 2006)
ViewCVS: http://svn.sourceforge.net/jrpm/?rev=10&view=rev
Log Message:
-----------
maven2 support
Added Paths:
-----------
trunk/pom.xml
trunk/src/changes/
trunk/src/changes/changes.xml
trunk/src/site/
trunk/src/site/resources/
trunk/src/site/resources/logo.png
trunk/src/site/site.xml
trunk/src/site/xdoc/
trunk/src/site/xdoc/changes.xml
trunk/src/site/xdoc/index.xml
trunk/src/site/xdoc/program_example.xml
trunk/src/site/xdoc/rpmspec/
trunk/src/site/xdoc/rpmspec/index.xml
trunk/src/site/xdoc/specs.xml
Property Changed:
----------------
trunk/
Property changes on: trunk
___________________________________________________________________
Name: svn:ignore
- jrpm.iml
jrpm.ipr
jrpm.iws
+ jrpm.iml
jrpm.ipr
jrpm.iws
target
_build
Added: trunk/pom.xml
===================================================================
--- trunk/pom.xml (rev 0)
+++ trunk/pom.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,132 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>com.jguild</groupId>
+ <artifactId>jrpm</artifactId>
+ <packaging>jar</packaging>
+ <version>0.8</version>
+ <name>jRPM</name>
+ <url>http://jrpm.sourceforge.net</url>
+ <description>jRPM is a java library to manipule and create RPM archives</description>
+
+ <issueManagement>
+ <url><![CDATA[http://sourceforge.net/tracker/?atid=517121&group_id=67170&func=browse]]></url>
+ </issueManagement>
+
+ <organization>
+ <name>Sourceforge</name>
+ <url>http://sourceforge.net</url>
+ </organization>
+
+ <scm>
+ <connection>scm:svn:http://svn.sourceforge.net/svnroot/jrpm</connection>
+ <developerConnection>scm:svn:https://svn.sourceforge.net/svnroot/jrpm</developerConnection>
+ <url>http://svn.sourceforge.net/jrpm</url>
+ </scm>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>1.6.1</version>
+ </dependency>
+ </dependencies>
+
+ <mailingLists>
+ <mailingList>
+ <name>jrpm-devel</name>
+ <subscribe>http://lists.sourceforge.net/lists/listinfo/jrpm-devel</subscribe>
+ <unsubscribe>http://lists.sourceforge.net/lists/listinfo/jrpm-devel</unsubscribe>
+ <archive>http://sourceforge.net/mailarchive/forum.php?forum=jrpm-devel</archive>
+ </mailingList>
+ </mailingLists>
+
+ <licenses>
+ <license>
+ <name>Apache License</name>
+ <url>http://www.apache.org/LICENSE</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+
+ <developers>
+ <developer>
+ <name>Yannick Menager</name>
+ <id>ymenager</id>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <url>/developer/ymenager/index.html</url>
+ <email>[email protected]</email>
+ </developer>
+ <developer>
+ <name>Michael Kuss</name>
+ <id>mkuss</id>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <url>http://www.michael-kuss.de</url>
+ <email>[email protected]</email>
+ </developer>
+ </developers>
+
+ <reporting>
+ <outputDirectory>_build/site</outputDirectory>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-project-info-reports-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>taglist-maven-plugin</artifactId>
+ <configuration>
+ <tags>TODO, @todo, FIXME, @deprecated</tags>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jxr-maven-plugin</artifactId>
+ <configuration>
+ <destDir>_build/site/xref</destDir>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <minmemory>128m</minmemory>
+ <maxmemory>512</maxmemory>
+ </configuration>
+ </plugin>
+ <!--<plugin>-->
+ <!--<groupId>org.codehaus.mojo</groupId>-->
+ <!--<artifactId>changelog-maven-plugin</artifactId>-->
+ <!--</plugin>-->
+ </plugins>
+ </reporting>
+
+ <build>
+ <outputDirectory>_build</outputDirectory>
+ <sourceDirectory>src/java</sourceDirectory>
+ <testSourceDirectory>src/test</testSourceDirectory>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.4</source>
+ <target>1.4</target>
+ <outputDirectory>_build/classes</outputDirectory>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
\ No newline at end of file
Added: trunk/src/changes/changes.xml
===================================================================
--- trunk/src/changes/changes.xml (rev 0)
+++ trunk/src/changes/changes.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,13 @@
+<document>
+ <properties>
+ <title>jRPM Releases</title>
+ </properties>
+
+ <body>
+ <release version="1.0" desc="Release 1.0">
+ <action dev="ymenager" date="" type="add">
+ Check all TODOs have been done
+ </action>
+ </release>
+ </body>
+</document>
\ No newline at end of file
Added: trunk/src/site/resources/logo.png
===================================================================
--- trunk/src/site/resources/logo.png (rev 0)
+++ trunk/src/site/resources/logo.png 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,20 @@
+PNG
+
+
IHDR Ù H LZ ¢ ÃPLTE½\÷÷÷ïïïüüüçæçÞÞÞÎÍÎÖÖÖÆÅÆ¾¾¾µµµA#HÜ&ué»Ñ¤Rü5µ´XÅ"f¬««p9Z/ýýÐDú/þDÑmCV@Ús©ï*
õvÝáZ³|8eáRóT´È,vêvº´¤ü~õ
py÷£ôî×éV7DðÎÒ·÷\ÔvYfÒ¨Ë)ÿÌþÛ*ò½ïO#6á8í åãÒÜduêtȵ~¡?v³[þíþ â9 AtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0UìÇ
IDATxÚÝ[évªÈF
+q6qCM4&ýþOukAÓkÝ^}º~îªýÕwÖ_ÿÕa]üÅ
ÚQ0ͯr__þ²¦
Óú¿¥¡¿+zkãÒ©Èå¼!þZè¶!
+4µÆ4uت^¯¯ø¤åzñø¡lV¿&"ÔßÚôG½CÞÛ"d°¼iµÚd³²ÉÒoµc2ج(DK¥ÛdY»m:
+aX-sõ)ÇñP~ë²eB`õv»Ö°,ëaó³Å+o[Váh4µàÓfØ ?Ådèu2{§B
ü9í¼É?M«ô7àM;~Þf6۫ئ]£$Áyk±ºµ®Éæå`C*ýrYëëðcc",j¨l'åWéÜf¦ñÑÛ̦{c ;Ä5(»ãFcðóCVJýxYëðS¦¬acøêÄ*²AÜÆ4ÒË(s½ï<Êw¢¤´wÈï+Gë}ã` _I6xY±]«¸ó !CÌáé"DF ÝÜX¹"+òéÙuÝKf&Ö·CxX)daG¢Mf;&ê2YGýA8ÂÌá¶cU Qôê2²Õ£,ëV*Å^B6Æenà¦FM%{8{`>î¼jȺy8fmÉZÐÄø%få;üÕF¢
+®çÕe{^JFXjØzcÌ£Y/õáX~kC»3W7]d´wÇ©kî"«0¡YùʸÜRì=O1³0|߯¢1´UhaZAL8·Ùu)Qõ4l+bIzU·XuùYCÓÜAæ^Ffªû}³ZUì%
Ö>Vª{¥MìãVöÁÑT·íXqÐS!u«Dæ¬ î]w¦¹
ìËdu΢,دeÁs#Ûª,Êæ ÷}¡HºÏªÕclIÎÔ 20§ÌÝèî!ó°:^@ælÈÀ¨eØN5³`Ôä<úwofd_²PÈüw>JZwùtñáï"æîZ${½t¿Aµ{×ÌóT O1ªS1GõkñªYD6ë¤b%äi
W!s·âÍOÝîq
EÉÌ`Uø¢RÍ,f*hxÞL ãÈG¸îÁå£}éZ£.JÈþ*@6LZ|¬ÐvºI<*3
+ÖèffsLùd³¼]ôÊäò ²êÀä>2èAnr§¿« Z½nf}Ä£yÜ=É"ÍöKúVVÒtíc"¨rNE-Ñ~0ÉÎ=íû[ÊBIÒ«I¹onfGm+¯Xª=í@D6VÙ<¶deíC¢-YÈé~ºôy(ë¿Bñq"I§k2³.åBɺä"3&B1Ð=©Ê¹ü^W^6ýäºõ¿lñ :¹À`fA°äjõ1m×`}ìþ3ëAAãõadqv̺lwÈ>gwY÷E~×G3ó¡¬ñ°±gfÙǬ-I,J3¬â)®/]²©$
{DwOñÁTÖæ0bp¸ÿú5²rYôsI²(U¡Ml ®ã§ 0hR¯©èpð\%®"SEmkê˺±¼5aHÝGDw¿Gfß¾IF3o·Éd8ö¤ÿÇç>
£"é>|µÑ®O8
ÙúŲo
*äôß½(¡JôÒrÁÜ`fÇimQ5Tq-QfBÂVÁ`
+Sú,k\ß DÈ~ºf^..ãÇ_!C"|~}uor¨ {iv\61.2Þ«©½MT\ ØÒǹ5Ì¢kòäóËÈD3®âÙdfßJÛæ<wGMüÓÃUÌ, Î߬ÁCµèLRÌcQ:[7;cã«ôO±ÏeÕÈʲÏOÏ×ÍìKiÛ´ïï'Ço¥Qwo褵6figÊLd ödO&dÑ~Ù<Å/fd9½+¤-Ñ£Þíy´N0ÀU3˦$hj=\°(ÍæöéÖP° iÆrb#ÃÊø%)ãZ7³¾àx<÷ÅäÉQÍì¼0]Àñ wêãо¥QT Ù¼ch]È:2²è²²Ñç+fÖγHoX%ã3÷}6l´d·£'@Oï¸EiXýd (æÍûß#[)fÖ×ÍT0çñy8Ô¶?Óx¡Ô¤pA7(I¢¢êõÆ£¹OjQ&v´NÐú~¬÷a¡.6Ó'9P#ËõùzÒ÷³vuh,&¼J¦÷Q(ñçhN
´ÎñΤ`DÝÈDb¯Y&k%`2þF2s;ÛÐ;N£Ñ÷÷ÚÁ°Pã@Öþ@ë1U
+<¨òÝKCFæ"fÖÒQ33è¶ÀnµFí¹»Îæuì8i
+%þ@1ÄEFzGj¨.CVSÔàÉEE¶Ò}¾nf]Ì÷míf¶¸õöCtrµ
+í
+áBQ¢ÎDÊ<î±âvS2'6³/è4OæWõñápÚC+{ªy"KêX
AÈv¦$!i1oãÇÍoAeHEçÒlf´ºÕºÐÙÛð:oÅÌPãU5B"%¶S¥ÉIlW
$|.@VR}>.:
fÆ;¨ÓaÎ9StÍ5
Òe²¨ÊY+WDS.bÌ:²Ï<døTÛ><iE§Á̸ØÚµ8÷×8Ñ´C¡³ÛæMFPzÓ:h'
êlMW)ÉL>§&Çõ¶}{¯% %°Â³¶Xðýe¬`.
r© Bûâ"ñdGPjà|²ò¬£v*
GFnÀÞèfÖ¬R ûað,Y¶£B2/ý¢x©pÁB5j0-v^Z!\õí¶l;ïOZb03ÖA
ØfúQl&ìÔ
+¦Ééw ²
íJMZ+#úuEMALÈÀʳF4þp§7è4$¬Ñú¼ÚѪ"ß
+æHseñS _#î¯tëx'Óqy¨÷sÉRGÖW[#m¢ÜMl©E'<7KÄ2B'»x¨TPâÛ{*{©wÛ 2 2ºÀ3.ÓÅ.(éÝA?IçôÈ!+V°;[Ö@²T«»q(
`´P¡ÐÚCQ`Y®LÕëT¹Ìo I×4â¶ïñÍM£×Ü9Nü¥°ÎéÆdpÖ)j¶Cð£.¯³rLAͶ°!´-¸²¤?â qlèÞ¢-ë`þóIîì ¢;Z}_lQгȬ+ì&µìö#£#²*-¤\Ò
üà¥'µ(¹@qU
Áª/ì=J¹È(´
+9w049;¢²`h|·®#dÄ-µu÷û£¡£yä[íù§ïóxüÉ¡YÊKqñÛEÈ6ºse/§,ø1¦6?CfÂm¶ß÷Ådë Í!»6lWyÉxFT0¸uhÖÅo¼`Àaa ±6?EF¨5ÏÝöÏ|3¶qâº7d_èöy2&¶#Q2Ä
ͳ®2ß90²úX¨»v²Zì×¾à:;QtñNßU GsÿUÆ14ÍäÏmÙÈT²ëðÀG¼`ÔÃÀ<!Ës¤ééKÙD¤^Q4MJ`hBY* Ðr¸¹î5¤AHÚ?3`6qRRË/rAèÄÞÖJ79·ÌK_~Ì§Ë ù
i¬²Å'+ $eÇ>oÚæëÚBþ ïmHSE͵ùÏÄy\YR¬TªcRwC_Ev»å¤Jb
+/|r ^¢/z^|ãgW,Þz?Ï¥Ð*坿õÚSåö `~~SüÅ ÷ÜU=_úØ."põ'"OAò^\ø"Eù.FðÜ4²^
+>ȸâúâçFõj<¾j®ëeóO~Ë$zn×ÂýµÀºÙWZ79¯ô+`ÿÊïÏ4Ï-¦*öu4áY@~Æð}3¨Dûr)/Çû¿ÌÉþßy
+qýæOÆeüJëßþÏßæþ©ã$8[
+V IEND®B`
\ No newline at end of file
Added: trunk/src/site/site.xml
===================================================================
--- trunk/src/site/site.xml (rev 0)
+++ trunk/src/site/site.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="jRPM">
+ <bannerLeft>
+ <name>Sourceforge</name>
+ <src>http://sflogo.sourceforge.net/sflogo.php?group_id=67170&type=7</src>
+ <href>http://www.sf.net/</href>
+ </bannerLeft>
+ <bannerRight>
+ <src>/logo.png</src>
+ <href>http://jrpm.sf.net/</href>
+ </bannerRight>
+ <body>
+ <menu name="Project">
+ <item name="Project Home" href="/index.html"/>
+ <item name="Sourceforge Page" href="http://sourceforge.net/projects/jrpm"/>
+ <item name="Mailing Lists" href="/mail-lists.html"/>
+ <item name="Team" href="/team-list.html"/>
+ <item name="Specs & File Formats" href="/specs.html" collapse="true">
+ <item name="RPM" href="/rpmspec/index.html"/>
+ <item name="CPIO" href="http://www.cs.helsinki.fi/linux/linux-kernel/2002-01/0940.html"/>
+ <item name="CPIO (2)" href="http://www.opengroup.org/onlinepubs/007908799/xsh/cpio.h.html"/>
+ <item name="CPIO (3)" href="http://www.cs.helsinki.fi/linux/linux-kernel/2002-01/0940.html"/>
+ </item>
+ <item name="Issue Tracking"
+ href="http://sourceforge.net/tracker/?atid=517121&group_id=67170&func=browse"/>
+ <item name="Examples" href="/program_example.html"/>
+ <item name="Version Control" href="/source-repository.html"/>
+ <item name="License" href="/license.html"/>
+ </menu>
+ <menu name="Downloads">
+ <item name="Latest: 0.8beta" href="http://prdownloads.sourceforge.net/jrpm/jrpm-0.8beta.tar.gz?download"/>
+ </menu>
+ <menu name="Reports and Statistics">
+ <item name="Javadocs" href="/apidocs"/>
+ <item name="XRef Sources" href="/jxr.html"/>
+ <item name='To Do' href="/taglist.html"/>
+ <item name="Dependencies" href="/dependencies.html"/>
+ <item name="Changelog" href="/changelog.html"/>
+ <item name="Sourceforge Stats" href="http://sourceforge.net/project/stats/?group_id=67170&ugn=jrpm"/>
+ </menu>
+ <menu name="RSS Feeds">
+ <item name="News RSS Feed"
+ href="http://sourceforge.net/export/rss2_projnews.php?group_id=67170&rss_fulltext=1"/>
+ <item name="File Release RSS Feed" href="http://sourceforge.net/export/rss2_projfiles.php?group_id=67170"/>
+ </menu>
+ </body>
+</project>
\ No newline at end of file
Added: trunk/src/site/xdoc/changes.xml
===================================================================
--- trunk/src/site/xdoc/changes.xml (rev 0)
+++ trunk/src/site/xdoc/changes.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<!--
+ - jGuild Project: jRPM
+ - Released under the Apache License ( http://www.apache.org/LICENSE )
+ -->
+
+<document>
+ <properties>
+ <title>Changes</title>
+ </properties>
+ <body>
+ <!--
+ <release version="0.8beta2" date="in CVS">
+ <action dev="ymenager" type="add">Added support for loading archive in memory ( threshold can be set to allow persisting it if the file is too big )</action>
+ <action dev="ymenager" type="add">Added bzip2 support to cpio archive</action>
+ </release>
+ -->
+ </body>
+</document>
Added: trunk/src/site/xdoc/index.xml
===================================================================
--- trunk/src/site/xdoc/index.xml (rev 0)
+++ trunk/src/site/xdoc/index.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+<!--
+ - jGuild Project: jRPM
+ - Released under the Apache License ( http://www.apache.org/LICENSE )
+ -->
+
+<document>
+ <properties>
+ <title>Changes</title>
+ </properties>
+ <body>
+ <section name="Overview">
+ jRPM is a java library to manipule and create
+ <a href='http://www.rpm.org/'>RPM archives</a>
+ </section>
+ </body>
+</document>
Added: trunk/src/site/xdoc/program_example.xml
===================================================================
--- trunk/src/site/xdoc/program_example.xml (rev 0)
+++ trunk/src/site/xdoc/program_example.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<!--
+ - jGuild Project: jRPM
+ - Released under the Apache License ( http://www.apache.org/LICENSE )
+ -->
+
+<document>
+ <properties>
+ <title>jRPM programming example</title>
+ <author>Michael Kuss</author>
+ </properties>
+ <body>
+ <section name="jRPM programming example">
+ <subsection name="Introduction">
+ <p>
+ It's quite easy to use jRPM. In the following section you
+ will see how to generate a peace of code that will read
+ tags out of a RPM file.
+ </p>
+ </subsection>
+
+ <subsection name="Reading tags">
+ <p>
+ First of all you have to create an instance of a RPM
+ file. This is done with the class
+ com.jguild.jrpm.io.RPMFile.
+ </p>
+ <source>RPMFile rpmFile = new RPMFile(new File("C:\test.rpm"));</source>
+ <p>
+ After that you can read tags out of the RPM file. For
+ example you can read the name, version, description out of
+ the file. For a list of tags consult the api documentation
+ for the class com.jguild.jrpm.io.constant.RPMHeaderTag or
+ the
+ <a href="rpmspec/index.html">RPM file spec</a>
+ .
+ </p>
+ <source>DataTypeIf tag = rpmFile.getTag("name")</source>
+ <p>
+ The DataTypeIf can be cast to a specific RPM type. So
+ specific actions can be taken for each type.
+ </p>
+ <source>
+ if (tag instanceof STRING) {
+ STRING rpmString = (STRING) tag;
+ String jString = rpmString.getData();
+ System.out.println("Name = " + jString);
+ }</source>
+ <subsection name="Locales">
+ <p>
+ RPM provides the capability to save more than one locale
+ in the file. So there can be one description in english
+ and one in german. This informations are saved as
+ I18NSTRINGs. All locales that are provided by a RPM
+ file can be read with the function getLocales().
+ </p>
+ <source>String[] locales = tag.getLocales().</source>
+ <p>
+ The locale for a RPM file can be specified by the
+ setLocale() method. This locale is automaticly returned
+ for each I18NSTRING. So you can switch between different
+ locales.
+ </p>
+ <source>
+ tag.setLocale("de");
+ System.out.println("German description : " +
+ tag.getTag("description").toString());
+ tag.setLocale("en");
+ System.out.println("English description : " +
+ tag.getTag("description").toString());</source>
+ </subsection>
+ </subsection>
+ </section>
+ </body>
+</document>
Added: trunk/src/site/xdoc/rpmspec/index.xml
===================================================================
--- trunk/src/site/xdoc/rpmspec/index.xml (rev 0)
+++ trunk/src/site/xdoc/rpmspec/index.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,923 @@
+<?xml version="1.0"?>
+<!--
+ - jGuild Project: jRPM
+ - Released under the Apache License ( http://www.apache.org/LICENSE )
+ -->
+
+<document>
+ <properties>
+ <title>RPM File Spec</title>
+ <author>Michael Kuss</author>
+ </properties>
+ <body>
+ <section name="RPM Specs">
+ <subsection name="Overview">
+ <p>
+ A RPM file consists of the
+ <a href="#RPMLead">lead</a>
+ , a
+ <a href="#RPMSignature">RPM signature</a>
+ and a
+ <a href="#RPMHeader">RPM header</a>
+ followed by a CPIO archive.
+ </p>
+
+ <p>
+ The
+ <a href="#RPMLead">lead</a>
+ is not used any more. All informations
+ are obsolete or are duplicated in the
+ <a href="#RPMSignature">RPM signature</a>
+ and
+ <a href="#RPMHeader">RPM header</a>
+ . But the
+ <a href="#RPMLead">lead</a>
+ is used to recognize rpm files with the
+ file command. See
+ <a href="#RPMLead">here</a>
+ to find out how the
+ lead is organized.
+ </p>
+
+ <p>
+ The
+ <a href="#RPMSignature">RPM signature</a>
+ and
+ <a href="#RPMHeader">RPM header</a>
+ share the same datastructure.
+ They consist of a
+ <a href="#Header">header</a>
+ , a number of
+ <a href="#Index">indexes</a>
+ and a store.
+ </p>
+ <p>
+ The
+ <a href="#Header">header</a>
+ contains the number of
+ <a href="#Index">indexes</a>
+ that follow the header and the size
+ of the store.
+ </p>
+ <p>
+ Every
+ <a href="#Index">index</a>
+ describes a bit of data stored in
+ the store. It consist of a tag (see
+ <a href="#RPMSigTags">signature tags</a>
+ and
+ <a href="#RPMHeadTags">header tags</a>
+ ), a data type, an offset in
+ the store and a count, describing the number of items stored as
+ the described data type.
+ </p>
+ <p>
+ Allowed data types are:
+ <table summary="allowed summary tags">
+ <thead>
+ <tr>
+ <th>type</th>
+ <th>count description</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>NULL</td>
+ <td>Number of nulls in the data field</td>
+ </tr>
+ <tr>
+ <td>CHAR</td>
+ <td>Number of chars in the data field</td>
+ </tr>
+ <tr>
+ <td>INT8</td>
+ <td>Number of int8 in the data field</td>
+ </tr>
+ <tr>
+ <td>INT16</td>
+ <td>Number of int16 in the data field</td>
+ </tr>
+ <tr>
+ <td>INT32</td>
+ <td>Number of int32 in the data field</td>
+ </tr>
+ <tr>
+ <td>INT64</td>
+ <td>Number of int64 in the data field</td>
+ </tr>
+ <tr>
+ <td>STRING</td>
+ <td>There can be only one string per entry. The
+ String is terminated by a \0 character</td>
+ </tr>
+ <tr>
+ <td>BIN</td>
+ <td>Number of bytes in the data field (as an binary
+ array)</td>
+ </tr>
+ <tr>
+ <td>STRING_ARRAY</td>
+ <td>Number of strings in the data field.
+ All strings are terminated with a \0 character</td>
+ </tr>
+ <tr>
+ <td>I18NSTRING</td>
+ <td>A string array that contains several
+ entries in different locales. Every entry correspond with a locale
+ defined at the same position as in the tag HEADERI18NTABLES in the
+ <a href="#RPMHeader">RPM header</a>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </p>
+
+ </subsection>
+ <subsection name="Dataspecs">
+ <a name="RPMLead"></a>
+ <h2>RPM Lead</h2>
+ <source>
+ unsigned char magic[4]; (4 byte) (ed ab ee db)
+ unsigned char major, minor; (1 byte each)
+ short type; (2 byte)
+ short archnum; (2 byte)
+ char name[66]; (66 byte)
+ short osnum; (2 byte)
+ short signature_type; (2 byte)
+ char reserved[16]; (16 byte)
+ =96 byte
+ </source>
+
+
+ <a name="Header"></a>
+ <h2>Header</h2>
+ <source>
+ unsigned char magic[3]; (3 byte) (8e ad e8)
+ unsigned char version; (1 byte)
+ char reserved[4]; (4 byte)
+ int num_index; (4 byte)
+ int num_data; (4 byte)
+ =16 byte
+ </source>
+
+
+ <a name="Index"></a>
+ <h2>Index</h2>
+ <source>
+ int tag; (4 byte)
+ int type; (4 byte)
+ int offset; (4 byte)
+ int count; (4 byte)
+ =16 byte
+ </source>
+
+
+ <a name="RPMSignature"></a>
+ <h2>RPM Signature</h2>
+ <div class='rpmspec_idx'>(
+ <a href="#Header">HEADER</a>
+ )
+ </div>
+ <div class='rpmspec_idx'>[
+ <a href="#Index">INDEX</a>
+ *
+ <a href="#Header">HEADER</a>
+ .num_data ]
+ </div>
+ <div class='rpmspec_idx'>[ DATA (num_data bytes) ]</div>
+ <div class='rpmspec_idx'>( as many empty bytes as required so that total size % 8 != 0 )</div>
+
+ <a name="RPMSigTags"></a>
+ <h3>Allowed tags</h3>
+ <table summary="allowed summary tags">
+ <thead>
+ <tr>
+ <th>TAG-Name</th>
+ <th>TAG-ID</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>HEADERSIGNATURES</td>
+ <td>62</td>
+ </tr>
+ <tr>
+ <td>BADSHA1_1</td>
+ <td>264</td>
+ </tr>
+ <tr>
+ <td>BADSHA1_2</td>
+ <td>265</td>
+ </tr>
+ <tr>
+ <td>DSA</td>
+ <td>267</td>
+ </tr>
+ <tr>
+ <td>RSA</td>
+ <td>268</td>
+ </tr>
+ <tr>
+ <td>SHA1</td>
+ <td>269</td>
+ </tr>
+ <tr>
+ <td>SIZE</td>
+ <td>1000</td>
+ </tr>
+ <tr>
+ <td>LEMD5_1</td>
+ <td>1001</td>
+ </tr>
+ <tr>
+ <td>PGP</td>
+ <td>1002</td>
+ </tr>
+ <tr>
+ <td>LEMD5_2</td>
+ <td>1003</td>
+ </tr>
+ <tr>
+ <td>MD5</td>
+ <td>1004</td>
+ </tr>
+ <tr>
+ <td>GPG</td>
+ <td>1005</td>
+ </tr>
+ <tr>
+ <td>PGP5</td>
+ <td>1006</td>
+ </tr>
+ <tr>
+ <td>PAYLOADSIZE</td>
+ <td>1007</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <a name="RPMHeader"></a>
+ <h2>RPM Header</h2>
+ <div class='rpmspec_idx'>(
+ <a href="#Header">HEADER</a>
+ )
+ </div>
+ <div class='rpmspec_idx'>[
+ <a href="#Index">INDEX</a>
+ *
+ <a href="#Header">HEADER</a>
+ .num_data ]
+ </div>
+ <div class='rpmspec_idx'>[ DATA (num_data bytes) ]</div>
+
+ <a name="RPMHeadTags"></a>
+ <h3>Allowed tags</h3>
+ <table summary="allowed header tags">
+ <thead>
+ <tr>
+ <th>TAG-Name</th>
+ <th>TAG-ID</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>HEADERIMAGE</td>
+ <td>61</td>
+ </tr>
+ <tr>
+ <td>HEADERSIGNATURES</td>
+ <td>62</td>
+ </tr>
+ <tr>
+ <td>HEADERIMMUTABLE</td>
+ <td>63</td>
+ </tr>
+ <tr>
+ <td>HEADERREGIONS</td>
+ <td>64</td>
+ </tr>
+ <tr>
+ <td>HEADERI18NTABLE</td>
+ <td>100</td>
+ </tr>
+ <tr>
+ <td>SIG_BASE</td>
+ <td>256</td>
+ </tr>
+ <tr>
+ <td>SIGSIZE</td>
+ <td>257</td>
+ </tr>
+ <tr>
+ <td>SIGLEMD5_1</td>
+ <td>258</td>
+ </tr>
+ <tr>
+ <td>SIGPGP</td>
+ <td>259</td>
+ </tr>
+ <tr>
+ <td>SIGLEMD5_2</td>
+ <td>260</td>
+ </tr>
+ <tr>
+ <td>SIGMD5</td>
+ <td>261</td>
+ </tr>
+ <tr>
+ <td>SIGGPG</td>
+ <td>262</td>
+ </tr>
+ <tr>
+ <td>SIGPGP5</td>
+ <td>263</td>
+ </tr>
+ <tr>
+ <td>BADSHA1_1</td>
+ <td>264</td>
+ </tr>
+ <tr>
+ <td>BADSHA1_2</td>
+ <td>265</td>
+ </tr>
+ <tr>
+ <td>PUBKEYS</td>
+ <td>266</td>
+ </tr>
+ <tr>
+ <td>DSAHEADER</td>
+ <td>267</td>
+ </tr>
+ <tr>
+ <td>RSAHEADER</td>
+ <td>268</td>
+ </tr>
+ <tr>
+ <td>SHA1HEADER</td>
+ <td>269</td>
+ </tr>
+ <tr>
+ <td>NAME</td>
+ <td>1000</td>
+ </tr>
+ <tr>
+ <td>VERSION</td>
+ <td>1001</td>
+ </tr>
+ <tr>
+ <td>RELEASE</td>
+ <td>1002</td>
+ </tr>
+ <tr>
+ <td>SERIAL</td>
+ <td>1003</td>
+ </tr>
+ <tr>
+ <td>SUMMARY</td>
+ <td>1004</td>
+ </tr>
+ <tr>
+ <td>DESCRIPTION</td>
+ <td>1005</td>
+ </tr>
+ <tr>
+ <td>BUILDTIME</td>
+ <td>1006</td>
+ </tr>
+ <tr>
+ <td>BUILDHOST</td>
+ <td>1007</td>
+ </tr>
+ <tr>
+ <td>INSTALLTIME</td>
+ <td>1008</td>
+ </tr>
+ <tr>
+ <td>SIZE</td>
+ <td>1009</td>
+ </tr>
+ <tr>
+ <td>DISTRIBUTION</td>
+ <td>1010</td>
+ </tr>
+ <tr>
+ <td>VENDOR</td>
+ <td>1011</td>
+ </tr>
+ <tr>
+ <td>GIF</td>
+ <td>1012</td>
+ </tr>
+ <tr>
+ <td>XPM</td>
+ <td>1013</td>
+ </tr>
+ <tr>
+ <td>COPYRIGHT</td>
+ <td>1014</td>
+ </tr>
+ <tr>
+ <td>PACKAGER</td>
+ <td>1015</td>
+ </tr>
+ <tr>
+ <td>GROUP</td>
+ <td>1016</td>
+ </tr>
+ <tr>
+ <td>CHANGELOG</td>
+ <td>1017</td>
+ </tr>
+ <tr>
+ <td>SOURCE</td>
+ <td>1018</td>
+ </tr>
+ <tr>
+ <td>PATCH</td>
+ <td>1019</td>
+ </tr>
+ <tr>
+ <td>URL</td>
+ <td>1020</td>
+ </tr>
+ <tr>
+ <td>OS</td>
+ <td>1021</td>
+ </tr>
+ <tr>
+ <td>ARCH</td>
+ <td>1022</td>
+ </tr>
+ <tr>
+ <td>PREIN</td>
+ <td>1023</td>
+ </tr>
+ <tr>
+ <td>POSTIN</td>
+ <td>1024</td>
+ </tr>
+ <tr>
+ <td>PREUN</td>
+ <td>1025</td>
+ </tr>
+ <tr>
+ <td>POSTUN</td>
+ <td>1026</td>
+ </tr>
+ <tr>
+ <td>FILENAMES</td>
+ <td>1027</td>
+ </tr>
+ <tr>
+ <td>FILESIZES</td>
+ <td>1028</td>
+ </tr>
+ <tr>
+ <td>FILESTATES</td>
+ <td>1029</td>
+ </tr>
+ <tr>
+ <td>FILEMODES</td>
+ <td>1030</td>
+ </tr>
+ <tr>
+ <td>FILEUIDS</td>
+ <td>1031</td>
+ </tr>
+ <tr>
+ <td>FILEGIDS</td>
+ <td>1032</td>
+ </tr>
+ <tr>
+ <td>FILERDEVS</td>
+ <td>1033</td>
+ </tr>
+ <tr>
+ <td>FILEMTIMES</td>
+ <td>1034</td>
+ </tr>
+ <tr>
+ <td>FILEMD5S</td>
+ <td>1035</td>
+ </tr>
+ <tr>
+ <td>FILELINKTOS</td>
+ <td>1036</td>
+ </tr>
+ <tr>
+ <td>FILEFLAGS</td>
+ <td>1037</td>
+ </tr>
+ <tr>
+ <td>ROOT</td>
+ <td>1038</td>
+ </tr>
+ <tr>
+ <td>FILEUSERNAME</td>
+ <td>1039</td>
+ </tr>
+ <tr>
+ <td>FILEGROUPNAME</td>
+ <td>1040</td>
+ </tr>
+ <tr>
+ <td>EXCLUDE</td>
+ <td>1041</td>
+ </tr>
+ <tr>
+ <td>EXCLUSIVE</td>
+ <td>1042</td>
+ </tr>
+ <tr>
+ <td>ICON</td>
+ <td>1043</td>
+ </tr>
+ <tr>
+ <td>SOURCERPM</td>
+ <td>1044</td>
+ </tr>
+ <tr>
+ <td>FILEVERIFYFLAGS</td>
+ <td>1045</td>
+ </tr>
+ <tr>
+ <td>ARCHIVESIZE</td>
+ <td>1046</td>
+ </tr>
+ <tr>
+ <td>PROVIDES</td>
+ <td>1047</td>
+ </tr>
+ <tr>
+ <td>REQUIREFLAGS</td>
+ <td>1048</td>
+ </tr>
+ <tr>
+ <td>REQUIRENAME</td>
+ <td>1049</td>
+ </tr>
+ <tr>
+ <td>REQUIREVERSION</td>
+ <td>1050</td>
+ </tr>
+ <tr>
+ <td>NOSOURCE</td>
+ <td>1051</td>
+ </tr>
+ <tr>
+ <td>NOPATCH</td>
+ <td>1052</td>
+ </tr>
+ <tr>
+ <td>CONFLICTFLAGS</td>
+ <td>1053</td>
+ </tr>
+ <tr>
+ <td>CONFLICTNAME</td>
+ <td>1054</td>
+ </tr>
+ <tr>
+ <td>CONFLICTVERSION</td>
+ <td>1055</td>
+ </tr>
+ <tr>
+ <td>DEFAULTPREFIX</td>
+ <td>1056</td>
+ </tr>
+ <tr>
+ <td>BUILDROOT</td>
+ <td>1057</td>
+ </tr>
+ <tr>
+ <td>INSTALLPREFIX</td>
+ <td>1058</td>
+ </tr>
+ <tr>
+ <td>EXCLUDEARCH</td>
+ <td>1059</td>
+ </tr>
+ <tr>
+ <td>EXCLUDEOS</td>
+ <td>1060</td>
+ </tr>
+ <tr>
+ <td>EXCLUSIVEARCH</td>
+ <td>1061</td>
+ </tr>
+ <tr>
+ <td>EXCLUSIVEOS</td>
+ <td>1062</td>
+ </tr>
+ <tr>
+ <td>AUTOREQPROV</td>
+ <td>1063</td>
+ </tr>
+ <tr>
+ <td>RPMVERSION</td>
+ <td>1064</td>
+ </tr>
+ <tr>
+ <td>TRIGGERSCRIPT</td>
+ <td>1065</td>
+ </tr>
+ <tr>
+ <td>TRIGGERNAME</td>
+ <td>1066</td>
+ </tr>
+ <tr>
+ <td>TRIGGERVERSION</td>
+ <td>1067</td>
+ </tr>
+ <tr>
+ <td>TRIGGERFLAGS</td>
+ <td>1068</td>
+ </tr>
+ <tr>
+ <td>TRIGGERINDEX</td>
+ <td>1069</td>
+ </tr>
+ <tr>
+ <td>VERIFYSCRIPT</td>
+ <td>1079</td>
+ </tr>
+ <tr>
+ <td>CHANGELOGTIME</td>
+ <td>1080</td>
+ </tr>
+ <tr>
+ <td>CHANGELOGNAME</td>
+ <td>1081</td>
+ </tr>
+ <tr>
+ <td>CHANGELOGTEXT</td>
+ <td>1082</td>
+ </tr>
+ <tr>
+ <td>BROKENMD5</td>
+ <td>1083</td>
+ </tr>
+ <tr>
+ <td>PREREQ</td>
+ <td>1084</td>
+ </tr>
+ <tr>
+ <td>PREINPROG</td>
+ <td>1085</td>
+ </tr>
+ <tr>
+ <td>POSTINPROG</td>
+ <td>1086</td>
+ </tr>
+ <tr>
+ <td>PREUNPROG</td>
+ <td>1087</td>
+ </tr>
+ <tr>
+ <td>POSTUNPROG</td>
+ <td>1088</td>
+ </tr>
+ <tr>
+ <td>BUILDARCHS</td>
+ <td>1089</td>
+ </tr>
+ <tr>
+ <td>OBSOLETENAME</td>
+ <td>1090</td>
+ </tr>
+ <tr>
+ <td>VERIFYSCRIPTPROG</td>
+ <td>1091</td>
+ </tr>
+ <tr>
+ <td>TRIGGERSCRIPTPROG</td>
+ <td>1092</td>
+ </tr>
+ <tr>
+ <td>DOCDIR</td>
+ <td>1093</td>
+ </tr>
+ <tr>
+ <td>COOKIE</td>
+ <td>1094</td>
+ </tr>
+ <tr>
+ <td>FILEDEVICES</td>
+ <td>1095</td>
+ </tr>
+ <tr>
+ <td>FILEINODES</td>
+ <td>1096</td>
+ </tr>
+ <tr>
+ <td>FILELANGS</td>
+ <td>1097</td>
+ </tr>
+ <tr>
+ <td>PREFIXES</td>
+ <td>1098</td>
+ </tr>
+ <tr>
+ <td>INSTPREFIXES</td>
+ <td>1099</td>
+ </tr>
+ <tr>
+ <td>TRIGGERIN</td>
+ <td>1100</td>
+ </tr>
+ <tr>
+ <td>TRIGGERUN</td>
+ <td>1101</td>
+ </tr>
+ <tr>
+ <td>TRIGGERPOSTUN</td>
+ <td>1102</td>
+ </tr>
+ <tr>
+ <td>AUTOREQ</td>
+ <td>1103</td>
+ </tr>
+ <tr>
+ <td>AUTOPROV</td>
+ <td>1104</td>
+ </tr>
+ <tr>
+ <td>CAPABILITY</td>
+ <td>1105</td>
+ </tr>
+ <tr>
+ <td>SOURCEPACKAGE</td>
+ <td>1106</td>
+ </tr>
+ <tr>
+ <td>OLDORIGFILENAMES</td>
+ <td>1107</td>
+ </tr>
+ <tr>
+ <td>BUILDPREREQ</td>
+ <td>1108</td>
+ </tr>
+ <tr>
+ <td>BUILDREQUIRES</td>
+ <td>1109</td>
+ </tr>
+ <tr>
+ <td>BUILDCONFLICTS</td>
+ <td>1110</td>
+ </tr>
+ <tr>
+ <td>BUILDMACROS</td>
+ <td>1111</td>
+ </tr>
+ <tr>
+ <td>PROVIDEFLAGS</td>
+ <td>1112</td>
+ </tr>
+ <tr>
+ <td>PROVIDEVERSION</td>
+ <td>1113</td>
+ </tr>
+ <tr>
+ <td>OBSOLETEFLAGS</td>
+ <td>1114</td>
+ </tr>
+ <tr>
+ <td>OBSOLETEVERSION</td>
+ <td>1115</td>
+ </tr>
+ <tr>
+ <td>DIRINDEXES</td>
+ <td>1116</td>
+ </tr>
+ <tr>
+ <td>BASENAMES</td>
+ <td>1117</td>
+ </tr>
+ <tr>
+ <td>DIRNAMES</td>
+ <td>1118</td>
+ </tr>
+ <tr>
+ <td>ORIGDIRINDEXES</td>
+ <td>1119</td>
+ </tr>
+ <tr>
+ <td>ORIGBASENAMES</td>
+ <td>1120</td>
+ </tr>
+ <tr>
+ <td>ORIGDIRNAMES</td>
+ <td>1121</td>
+ </tr>
+ <tr>
+ <td>OPTFLAGS</td>
+ <td>1122</td>
+ </tr>
+ <tr>
+ <td>DISTURL</td>
+ <td>1123</td>
+ </tr>
+ <tr>
+ <td>PAYLOADFORMAT</td>
+ <td>1124</td>
+ </tr>
+ <tr>
+ <td>PAYLOADCOMPRESSOR</td>
+ <td>1125</td>
+ </tr>
+ <tr>
+ <td>PAYLOADFLAGS</td>
+ <td>1126</td>
+ </tr>
+ <tr>
+ <td>INSTALLCOLOR</td>
+ <td>1127</td>
+ </tr>
+ <tr>
+ <td>INSTALLTID</td>
+ <td>1128</td>
+ </tr>
+ <tr>
+ <td>REMOVETID</td>
+ <td>1129</td>
+ </tr>
+ <tr>
+ <td>SHA1RHN</td>
+ <td>1130</td>
+ </tr>
+ <tr>
+ <td>RHNPLATFORM</td>
+ <td>1131</td>
+ </tr>
+ <tr>
+ <td>PLATFORM</td>
+ <td>1132</td>
+ </tr>
+ <tr>
+ <td>PATCHESNAME</td>
+ <td>1133</td>
+ </tr>
+ <tr>
+ <td>PATCHESFLAGS</td>
+ <td>1134</td>
+ </tr>
+ <tr>
+ <td>PATCHESVERSION</td>
+ <td>1135</td>
+ </tr>
+ <tr>
+ <td>CACHECTIME</td>
+ <td>1136</td>
+ </tr>
+ <tr>
+ <td>CACHEPKGPATH</td>
+ <td>1137</td>
+ </tr>
+ <tr>
+ <td>CACHEPKGSIZE</td>
+ <td>1138</td>
+ </tr>
+ <tr>
+ <td>CACHEPKGMTIME</td>
+ <td>1139</td>
+ </tr>
+ <tr>
+ <td>FILECOLORS</td>
+ <td>1140</td>
+ </tr>
+ <tr>
+ <td>FILECLASS</td>
+ <td>1141</td>
+ </tr>
+ <tr>
+ <td>CLASSDICT</td>
+ <td>1142</td>
+ </tr>
+ <tr>
+ <td>FILEDEPENDSX</td>
+ <td>1143</td>
+ </tr>
+ <tr>
+ <td>FILEDEPENDSN</td>
+ <td>1144</td>
+ </tr>
+ <tr>
+ <td>DEPENDSDICT</td>
+ <td>1145</td>
+ </tr>
+ <tr>
+ <td>SOURCEPKGID</td>
+ <td>1146</td>
+ </tr>
+ </tbody>
+ </table>
+ </subsection>
+ <subsection name="Reference">
+ <p>For further informations on rpm see
+ <a href="http://www.rpm.org" name="rpm.org">www.rpm.org</a>
+ .
+ You can find there the book Maximum RPM and the source for rpm.
+ </p>
+ </subsection>
+ </section>
+ </body>
+</document>
Added: trunk/src/site/xdoc/specs.xml
===================================================================
--- trunk/src/site/xdoc/specs.xml (rev 0)
+++ trunk/src/site/xdoc/specs.xml 2006-03-02 15:24:43 UTC (rev 10)
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<document name="jRPM">
+ <properties>
+ <title>Specs</title>
+ </properties>
+
+ <body>
+ </body>
+</document>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642