updates.
authorPekka Riikonen <priikone@silcnet.org>
Sat, 9 Feb 2002 15:21:17 +0000 (15:21 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Sat, 9 Feb 2002 15:21:17 +0000 (15:21 +0000)
12 files changed:
.cvsignore [new file with mode: 0644]
CHANGES
lib/LIBINDEX
lib/silcclient/DIRECTORY
lib/silcclient/Makefile.am
lib/silcclient/silcclient_using.html [moved from lib/silcclient/README with 69% similarity]
lib/silcutil/silchashtable.h
scripts/silcdoc/gen_detail.php
scripts/silcdoc/gen_html_detail.php [new file with mode: 0644]
scripts/silcdoc/index.php
scripts/silcdoc/silcdoc
util/robodoc/Source/generator.c

diff --git a/.cvsignore b/.cvsignore
new file mode 100644 (file)
index 0000000..204db8f
--- /dev/null
@@ -0,0 +1,19 @@
+Makefile
+Makefile.in
+Makefile.am
+Makefile.defines.in
+Makefile.defines_int.in
+config.cache
+config.guess
+config.h
+config.h.in
+config.log
+config.status
+config.sub
+configure
+configure.in
+libtool
+libtool-shared
+ltconfig
+stamp-h
+stamp-h.in
diff --git a/CHANGES b/CHANGES
index ccde29976d2a194f7f74db748f7943b6feda416a..aac227279abb865df1b5d8b6de85826289bb2278 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -3,6 +3,13 @@ Sat Feb  9 14:54:33 EET 2002  Pekka Riikonen <priikone@silcnet.org>
        * Allow zero length channel messages inside the Channel Message
          Payload.  Affected file lib/silccore/silcchannel.c.
 
+       * Fixed scripts/silcdoc/silcdoc to support all kinds of filenames
+         as header filenames.
+
+       * Removed lib/silcclient/README and created HTML file
+         lib/silcclient/silcclient_using.html, which is now included
+         as part of Toolkit documentation.
+
 Thu Feb  7 10:12:25 CET 2002  Pekka Riikonen <priikone@silcnet.org>
 
        * Fixed CUMODE_CHANGE notify handling to change the mode of
index 565a0c5c712928095fb71315f51ccd08ca252c48..ba2219d13328e0198c628f574c811b5b0539304a 100644 (file)
@@ -5,11 +5,19 @@
 
 <FONT SIZE="+3" COLOR="#000044"><B>SILC Toolkit Reference Manual</B></FONT>
 <BR>
-Copyright (C) GNU GPL 2001 The SILC Project<BR>
-Version: 0.7.1<BR>
+Copyright (C) 2001 - 2002 The SILC Project<BR>
+Version: @VERSION@<BR>
 Updated: @DATE@
 <BR><BR>
 <B><FONT SIZE="2">Note that this document is still under work and does not
-include yet all references for SILC Toolkit interfaces.  </FONT></B>
+include yet all references for SILC Toolkit interfaces.</FONT></B>
 <BR><BR>
 @BODY@
+
+<BR><BR>
+<FONT SIZE="+2" COLOR="#000044"><B>Resource Links</B></FONT>
+<BR><BR>
+<LI><A HREF="http://silcnet.org">SILC Project Website</a><BR>
+<LI><A HREF="http://silcnet.org/?page=docs">SILC Protocol Documentation</a><BR>
+<LI><A HREF="http://silcnet.org/?page=whitepaper">SILC White Paper</a><BR>
+<LI><A HREF="http://silcnet.org/?page=faq">SILC FAQ</a><BR>
index f4ac2554a5b926f3b52d220271ef6a2ed2af2129..e80ba7cae7999f9d92bde9d8e150ab65a18e8aaf 100644 (file)
@@ -1,7 +1,8 @@
 <!--
 @LIBRARY=SILC Client Library
 @FILENAME=silcclientlib.html
-@LINK=silcapi.html:SILC Client API
+@LINK=silcclient_using.html:Using SILC Client Library
+@LINK=silcapi.html:Client Library Interface
 -->
 
 <FONT SIZE="+3">SILC Client Library</FONT><BR><BR>
index 5dafa9749e1fe2d7fcc1f84e8ab84ad864fae414..ccacb703984652d5743d6bb2eddcafbae698d83b 100644 (file)
@@ -42,6 +42,6 @@ include_HEADERS=      \
        silcapi.h
 endif
 
-EXTRA_DIST = *.h client_ops_example.c
+EXTRA_DIST = *.h client_ops_example.c *.html
 
 include $(top_srcdir)/Makefile.defines.in
similarity index 69%
rename from lib/silcclient/README
rename to lib/silcclient/silcclient_using.html
index 2b578a7ef800028908927def899a53c13fa03040..1ffa65b7ebbd0ee0d3742ba296c80be95283877c 100644 (file)
@@ -1,11 +1,11 @@
+<br />
+<font size="+2">Using SILC Client Library</font>
 
-                      SILC Client Library Manual
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.0 Introduction</b>
 
-                             Version 0.7.4
-
-1.0 Introduction
-
-SILC Client library is a full featured SILC Client protocolimplementation.
+<br />&nbsp;<br />
+SILC Client library is a full featured SILC Client protocol implementation.
 The library has been designed to be complete SILC client without actual
 user interface.  The library provides the API for the appliation which
 it can use to implement generally whatever user interface it wants.  The
@@ -13,6 +13,7 @@ SILC Client Library recides in the lib/silcclient/ directory.  It uses
 common and core compomnent of SILC protocol from the lib/silccore, SKE
 from lib/silcske and general utility routines from lib/silcutil.
 
+<br />&nbsp;<br />
 The `silcapi.h' file defines the function prototypes that application
 must implement in order to be able to create the user interface with the
 library.  The idea is that the application can implement whatever user
@@ -25,37 +26,50 @@ the application can call.  The interface includes for example functions
 for sending channel and private messages, client and channel retrieval
 and other utility functions.
 
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.0.1 Including Library Headers</b>
 
-1.0.1 Including Library Headers
-
+<br />&nbsp;<br />
 Your application must include the following includes in your sources to 
 get access all SILC Client Library routines:
 
-#include "silcincludes.h"
+<br />&nbsp;<br />
+<tt>
+#include "silcincludes.h"<br />
 #include "clientlibincludes.h"
+</tt>
 
+<br />&nbsp;<br />
 If you are compiling with C++ compiler then you need to include the 
 headers as follows:
 
-extern "C" {
-#include "silcincludes.h"
-#include "clientlibincludes.h"
+<br />&nbsp;<br />
+<tt>
+extern "C" {<br />
+#include "silcincludes.h"<br />
+#include "clientlibincludes.h"<br &/>
 }
+</tt>
 
 
-1.1 Creating Client
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.1 Creating Client</b>
 
+<br />&nbsp;<br />
 The client is context or entity based, so several client entitites can
 be created in the application if needed.  However, it should be noted
 that they are completely independent from each other and can be seen
 as different applications.  Usually only one client entity is needed
 per application.
 
+<br />&nbsp;<br />
 The client object is SilcClient which is usually allocated in following
 manner:
 
-       SilcClient client = silc_client_alloc(&ops, context, version);
+<br />&nbsp;<br />
+<tt>&nbsp;&nbsp;SilcClient client = silc_client_alloc(&ops, params, context, version);</tt>
 
+<br />&nbsp;<br />
 `ops' is the static structure of client operations that library will call.
 `context' can be some application specific context that will be saved into
 the SilcClient object.  It is up to the caller to free this context.
@@ -63,75 +77,95 @@ SilcClient is always passed to the application thus the application
 specific context can be retrieved from the SilcClient object.  See 
 `client.h' file for detailed definition of SilcClient object.
 
+<br />&nbsp;<br />
 `ops' can be defined for example as follows:
 
-SilcClientOperations ops = {
-  silc_say,
-  silc_channel_message,
-  silc_private_message,
-  silc_notify,
-  silc_command,
-  silc_command_reply,
-  silc_connect,
-  silc_disconnect,
-  silc_get_auth_method,
-  silc_verify_public_key,
-  silc_ask_passphrase,
-  silc_failure,
-  silc_key_agreement,
-};
-
+<br />&nbsp;<br />
+<tt>
+SilcClientOperations ops = {<br />
+&nbsp;&nbsp;  silc_say,<br />
+&nbsp;&nbsp;  silc_channel_message,<br />
+&nbsp;&nbsp;  silc_private_message,<br />
+&nbsp;&nbsp;  silc_notify,<br />
+&nbsp;&nbsp;  silc_command,<br />
+&nbsp;&nbsp;  silc_command_reply,<br />
+&nbsp;&nbsp;  silc_connect,<br />
+&nbsp;&nbsp;  silc_disconnect,<br />
+&nbsp;&nbsp;  silc_get_auth_method,<br />
+&nbsp;&nbsp;  silc_verify_public_key,<br />
+&nbsp;&nbsp;  silc_ask_passphrase,<br />
+&nbsp;&nbsp;  silc_failure,<br />
+&nbsp;&nbsp;  silc_key_agreement,<br />
+};<br />
+</tt>
+
+<br />&nbsp;<br />
 Please see the `client_ops_example.c' source file in lib/silcclient/
 directory for predefined structure and stub functions for your
-convenince.  It is provided for programmers so that they can copy
+convenience.  It is provided for programmers so that they can copy
 it and use it directly in their application.
 
 
-1.2 Initializing the Client
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.2 Initializing the Client</b>
 
+<br />&nbsp;<br />
 The client must be initialized before running.  However, there are also
 some other tasks that must be done before initializing the client.
 The following pointers must be set by the application  before calling
 the initializing function:
 
-       client->username
-       client->hostname
-       client->realname
-       client->pkcs
-       client->public_key
-       client->private_key
-
+<br />&nbsp;<br />
+<tt>
+&nbsp;&nbsp;client->username<br />
+&nbsp;&nbsp;client->hostname<br />
+&nbsp;&nbsp;client->realname<br />
+&nbsp;&nbsp;client->pkcs<br />
+&nbsp;&nbsp;client->public_key<br />
+&nbsp;&nbsp;client->private_key
+</tt>
+
+<br />&nbsp;<br />
 You may also set client->nickname if you want.  If it is set then the
 library will change the nickname to that one after the client is connected
 to the server.  If not set, then server will initially give the nickname
 which is same as the username.
 
+<br />&nbsp;<br />
 After setting the pointers one must call:
 
-       silc_client_init(client);
+<br />&nbsp;<br />
+<tt>&nbsp;&nbsp;silc_client_init(client);</tt>
 
+<br />&nbsp;<br />
 which then initializes the client library for the `client'.  If the
 pointers mentioned above are not initialized the silc_client_init will
 fail.  The application should check the return value of the silc_client_init
 function.
 
 
-1.3 Running the Client
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.3 Running the Client</b>
 
+<br />&nbsp;<br />
 The client is run by calling silc_client_run.  The function will call
 the scheduler from utility library that will be run until the program is
 ended.  When silc_client_run returns the application is ended.  Thus,
 to run the client, call:
 
-       silc_client_run(client);
+<br />&nbsp;<br />
+<tt>&nbsp;&nbsp;silc_client_run(client);</tt>
 
+<br />&nbsp;<br />
 Usually application may do some other initializations before calling
 this function.  For example before calling this function application
 should initialize the user interface.
 
 
-1.3.1 Running the Client in GUI application
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.3.1 Running the Client in GUI application</b>
 
+<br />&nbsp;<br />
 Many GUI applications has their own main loop or event loop, which they 
 would like to use or are forced to use by the underlaying system.  If you 
 are developing for example GUI application on Unix system, and you are 
@@ -142,6 +176,7 @@ client library once, and returns immediately.  During that running it can
 process incoming data and send outgoing data, but it is guaranteed that it 
 will not block the calling process.
 
+<br />&nbsp;<br />
 It is suggested that you would call this function as many times in a 
 second as possible to provide smooth action for the client library.  You 
 can use an timeout task, or an idle task provided by your GUI library to 
@@ -152,48 +187,64 @@ there is GTK-- GUI example in silcer/ directory.  That example calls the
 silc_client_run_one every 50 milliseconds, and it should be sufficient for 
 smooth working.
 
+<br />&nbsp;<br />
 For Win32 the silc_client_run can be used instead of using the Windows's 
 own event loop.  However, if you would like to use the silc_client_run_one 
 also on Win32 systems it is possible.
 
 
-1.3.1.1 Running Client in GTK--
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.3.1.1 Running Client in GTK--</b>
 
+<br />&nbsp;<br />
 Here is a short example how to run the SILC Client libary under the 
 Gnome/GTK--'s main loop:
 
-gint YourClass::silc_scheduler()
-{
-  // Run the SILC client once, and return immediately.  This function
-  // is called every 50 milliseconds by the Gnome main loop, to process
-  // SILC stuff.  This function will read data, and write data to network,
-  // etc.  Makes the client library tick! :)
-  silc_client_run_one(silc_client);
-  return 1;
-}
-
+<br />&nbsp;<br />
+<tt>
+gint YourClass::silc_scheduler()<br />
+{<br />
+&nbsp;&nbsp;  // Run the SILC client once, and return immediately.  This function<br />
+&nbsp;&nbsp;  // is called every 50 milliseconds by the Gnome main loop, to process<br />
+&nbsp;&nbsp;  // SILC stuff.  This function will read data, and write data to network,<br />
+&nbsp;&nbsp;  // etc.  Makes the client library tick! :)<br />
+&nbsp;&nbsp;  silc_client_run_one(silc_client);<br />
+&nbsp;&nbsp;  return 1;<br />
+}<br />
+</tt>
+
+<br />&nbsp;<br />
 then, during initialization of the SILC Client call:
 
-  // Setup SILC scheduler as timeout task. This will handle the SILC
-  // client library every 50 milliseconds.  It will actually make the
-  // SILC client work on background.
-  Gnome::Main::timeout.connect(slot(this, &YourClass::silc_scheduler), 50);
+<br />&nbsp;<br />
+<tt>
+// Setup SILC scheduler as timeout task. This will handle the SILC<br />
+// client library every 50 milliseconds.  It will actually make the<br />
+// SILC client work on background.<br />
+Gnome::Main::timeout.connect(slot(this, &YourClass::silc_scheduler), 50);<br />
+</tt>
 
+<br />&nbsp;<br />
 This will call the function silc_scheduler every 50 millisecconds, which 
 on the otherhand will call silc_client_run_one, which will make the SILC 
 Client library work on the background of the GUI application.
 
 
-1.4 Creating Connection to Server
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.4 Creating Connection to Server</b>
 
+<br />&nbsp;<br />
 Connection to remote SILC server is done by calling:
 
-       silc_client_connect_to_server(client, port, hostname, context);
+<br />&nbsp;<br />
+<tt>&nbsp;&nbsp;silc_client_connect_to_server(client, port, hostname, context);</tt>
 
+<br />&nbsp;<br />
 The function will create the connection asynchronously to the server, ie.
 the function will return before the actual connection is created.  After
 the connection is created the client->ops->connect operation is called.
 
+<br />&nbsp;<br />
 Generally speaking the connections are associated with windows' on the
 screen.  IRC is usually implemented this way, however it is not the
 necessary way to associate the client's connections.  SilcClientConnection
@@ -205,8 +256,10 @@ thus perhaps associate the connection with what ever object in
 application (window or something else).
 
 
-1.4.1 Using Own Connecting
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.4.1 Using Own Connecting</b>
 
+<br />&nbsp;<br />
 Application might not want to use silc_client_connect_to_server function
 if it wants to perform its own connecting for some reason.  In this case
 application must call function silc_client_start_key_exchange after it
@@ -214,29 +267,40 @@ has created the connection by itself.  This function starts the key
 exhange protocol between the client and server and the library takes care
 of everything after that.
 
+<br />&nbsp;<br />
 After connection has been created application must call:
 
-       SilcClientConnection conn;
+<br />&nbsp;<br />
+<tt>
+&nbsp;&nbsp;SilcClientConnection conn;
 
-       /* Add new connection to client */
-       conn = silc_client_add_connection(client, hostname, port, context);
+<br />&nbsp;<br />
+&nbsp;&nbsp;/* Add new connection to client */<br />
+&nbsp;&nbsp;conn = silc_client_add_connection(client, hostname, port, context);
 
-       /* Start key exchange and let the library handle everything
-          after this point on. */
-       silc_client_start_key_exchange(client, conn, sock);
+<br />&nbsp;<br />
+&nbsp;&nbsp;/* Start key exchange and let the library handle everything<br />
+&nbsp;&nbsp;   after this point on. */<br />
+&nbsp;&nbsp;silc_client_start_key_exchange(client, conn, sock);
+</tt>
 
+<br />&nbsp;<br />
 NOTE: These calls are performed only and only if application did not call
 silc_client_connect_to_server function, but performed the connecting 
 process manually.
 
 
-1.5 Example Client
+<br />&nbsp;<br />&nbsp;<br />
+<b>1.5 Example Client</b>
 
+<br />&nbsp;<br />
 This section includes an example SILC client implementation in pseudo-like
 C code.  It creates and initializes the client and sets up an imaginary
 user interface.  The user will use the user interface then to create
 the connections.  The SilcClientOperations are expected to be implemented.
 
+<br />&nbsp;<br />
+<pre>
 #include "silcincludes.h"
 #include "silcapi.h"
 
@@ -303,3 +367,4 @@ int main()
        /* Client is ended */
        return 0;
 }
+</pre>
index c7eeed3ec9c2aec76727ba81c9fb64c9fade2175..9c4c823cc035a24eaff48574eafe69ed3d6695b6 100644 (file)
@@ -341,7 +341,7 @@ bool silc_hash_table_find(SilcHashTable ht, void *key,
  *
  * NOTES
  *
- *    The hash table will not be rehashed during the traversing of the list,
+ *    The hash table will not be rehashed during the traversing of the table,
  *    even if the table was marked as auto rehashable.  The caller also must
  *    not call silc_hash_table_rehash while traversing the table.
  *
@@ -363,7 +363,7 @@ void silc_hash_table_find_foreach(SilcHashTable ht, void *key,
  *
  * NOTES
  *
- *    The hash table will not be rehashed during the traversing of the list,
+ *    The hash table will not be rehashed during the traversing of the table,
  *    even if the table was marked as auto rehashable.  The caller also must
  *    not call silc_hash_table_rehash while traversing the table.
  *
@@ -618,7 +618,7 @@ bool silc_hash_table_find_ext(SilcHashTable ht, void *key,
  *
  * NOTES
  *
- *    The hash table will not be rehashed during the traversing of the list,
+ *    The hash table will not be rehashed during the traversing of the table,
  *    even if the table was marked as auto rehashable.  The caller also must
  *    not call silc_hash_table_rehash while traversing the table.
  *
index 1ab755bf914af622bf80d887350cd63f7e3012a3..7b3d1298d137efa57415829c5043dc8fc8482e18 100644 (file)
@@ -35,7 +35,7 @@ require "$page";
 </font>
 </td>
 
-<td>
+<td bgcolor="#dddddd">
 <table bgcolor="#dddddd" cellpadding=4 cellspacing=0 border=0 
 width="99%" align=center>
 <tr><td>
@@ -43,9 +43,9 @@ width="99%" align=center>
 
 <?php
 /* Get the index for this page */
-$len = strcspn($page, "_");
+$len = strcspn($page, "__");
 $fname = substr($page, 0, $len);
-require "$fname"."_index.tmpl";
+require "$fname"."__index.tmpl";
 ?>
 
 </font>
diff --git a/scripts/silcdoc/gen_html_detail.php b/scripts/silcdoc/gen_html_detail.php
new file mode 100644 (file)
index 0000000..999fcb1
--- /dev/null
@@ -0,0 +1,39 @@
+<?php
+/*
+
+  Author: Pekka Riikonen <priikone@silcnet.org>
+
+  Copyright (C) 2001 Pekka Riikonen
+
+  This program is free software; you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation; either version 2 of the License, or
+  (at your option) any later version.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  This is the detailed page generator. This generates the actual data
+  that is shown plus index at the right side. 
+
+*/
+?>
+
+<div align="center">
+<table cellpadding=2 cellspacing=0 border=0 width="99%" align=center>
+<tr>
+<td valign=top>
+<font face="Helvetica,Arial,Sans-serif" size="+1">
+
+<?php
+/* Get the actual data for the page */
+require "$page";
+?>
+
+</font>
+</td>
+</tr>
+</table>
+</div>
index 0ad58fa55374b32bb49be09c710a95f10eacab45..49a3862d58f521178d47403b0af4d65e7c389120 100644 (file)
@@ -27,8 +27,8 @@
       <td>
         <table width="100%" bgcolor="#e2e2e2" cellpadding="10" cellspacing="0" border="0">
         <tr>
-       <td valign="top"><font face="Helvetica,Arial,Sans-serif">
-       <table width="100%" bgcolor="#e2e2e2" cellpadding="1" cellspacing="0" border="0" align="left">
+       <td width="20%" valign="top"><font face="Helvetica,Arial,Sans-serif">
+       <table bgcolor="#e2e2e2" cellpadding="1" cellspacing="0" border="0" align="left">
        <tr><td valign="top"><font size="2"face="Helvetica,Arial,Sans-serif">
 <?php
 require "$dest/index.tmpl";
index 32001a707bcb607958cbc5f61e4e56fc756c5e54..a9dd91586bb03ae240f69deb66f41cdc6bbe1c85 100755 (executable)
@@ -46,10 +46,13 @@ headers=`find $SRC -name "silc*.h"`
 # HTML documentation
 #
 if [ "$TYPE" = "HTML" ]; then
+  rm -rf /tmp/silcdoc.html
+  rm -rf /tmp/silcdoc_html.html
   mkdir /tmp/silcdoc.html
+  mkdir /tmp/silcdoc_html.html
   cp $headers /tmp/silcdoc.html
 
-  # Generate indes template from the DIRECTORY files
+  # Generate index template from the DIRECTORY files
   files=`find $SRC -name "DIRECTORY"`
   for i in $files
   do
@@ -69,6 +72,26 @@ if [ "$TYPE" = "HTML" ]; then
     done
   done
 
+  # Copy all HTML files to destination
+  htmlfiles=`find $SRC -name "silc*.html"`
+  for i in $htmlfiles
+  do
+    cp $i /tmp/silcdoc_html.html
+  done
+  path=`pwd`
+  cd /tmp/silcdoc_html.html
+  htmlfiles=`find . -name "silc*.html" | cut -d/  -f2`
+  cd $path
+  for i in $htmlfiles
+  do
+    # Generate the details and the layout
+    f="/tmp/silcdoc_html.html/$i"
+    sh gen.sh $DST gen_html_detail.php $f $f
+    sh gen.sh $DST index.php $f $f
+    cp /tmp/silcdoc_html.html/$i $DST
+echo $f
+  done
+
   # Generate the actual detailed documentation
   path=`pwd`
   cd /tmp/silcdoc.html
@@ -82,15 +105,15 @@ if [ "$TYPE" = "HTML" ]; then
     sh gen.sh $DST gen_toc.php $DST/$i.html $DST/$i.html
     sh gen.sh $DST index.php $DST/$i.html $DST/$i.html
 
-    # Generate the details and the layour
-    files=`find $DST -name ""$i"_*.html"`
+    # Generate the details and the layout
+    files=`find $DST -name ""$i"__*.html"`
     for k in $files
     do
       sh gen.sh $DST gen_detail.php $k $k
       sh gen.sh $DST index.php $k $k
     done
 
-    rm -f $DST/$i_index.tmpl
+    rm -f $DST/$i__index.tmpl
   done
 
   # Generate the index and TOC files from the DIRECTORY files
@@ -115,11 +138,13 @@ if [ "$TYPE" = "HTML" ]; then
 
   # Generate the top index.html file
   index=`find $SRC -name "LIBINDEX"`
+  version=`grep SILC_VERSION_STRING $SRC/../includes/version_internal.h |cut -d\"  -f2`
   curdate=`date`
-  sed -e "/@DATE@/s//$curdate/" -e "/@BODY@/ r $DST/index.html.tmp" -e s/@BODY@//g $index >$DST/index.html
+  sed -e "/@VERSION@/s//$version/" -e "/@DATE@/s//$curdate/" -e "/@BODY@/ r $DST/index.html.tmp" -e s/@BODY@//g $index >$DST/index.html
   sh gen.sh $DST gen_toc.php $DST/index.html $DST/index.html
   sh gen.sh $DST index.php $DST/index.html $DST/index.html
 
   rm -rf $DST/index.html.tmp
   rm -rf /tmp/silcdoc.html
+  rm -rf /tmp/silcdoc_html.html
 fi
index c9dcd8de8a59f26c242687ea882acda7b30027f2..6c12fa26b8994ea23e24ffa72a2720e6f37436ac 100644 (file)
@@ -64,7 +64,7 @@ RB_Generate_Documentation (
 
       if (output_mode == HTML)
         {
-          sprintf(fname, "%s_%s.html", doc_base, cur_header->function_name);
+          sprintf(fname, "%s__%s.html", doc_base, cur_header->function_name);
           dest_doc = fopen(fname, "w");
           if (!dest_doc)
             {
@@ -272,7 +272,7 @@ RB_Generate_Doc_Start (
 #endif
 
          /* Generate quick index file, for fast referencing */
-         sprintf(iname, "%s_index.tmpl", doc_base);
+         sprintf(iname, "%s__index.tmpl", doc_base);
           index = fopen(iname, "w");
           if (!index)
            {
@@ -286,7 +286,7 @@ RB_Generate_Doc_Start (
            {
              char fname[256];
 
-             sprintf(fname, "%s_%s.html", RB_FilePart(doc_base), 
+             sprintf(fname, "%s__%s.html", RB_FilePart(doc_base), 
                      cur_header->function_name);
 
              if (cur_header->name && cur_header->function_name)
@@ -1284,7 +1284,7 @@ RB_Generate_Item_Body (FILE * dest_doc, char *dest_name,
                          fprintf (dest_doc, "<A HREF=\"#%s\">%s</A>",
                                   label_name, label_name);
 #endif
-                         fprintf (dest_doc, "<A HREF=\"%s_%s.html\">%s</A>",
+                         fprintf (dest_doc, "<A HREF=\"%s__%s.html\">%s</A>",
                                   RB_FilePart(doc_base), label_name, 
                                               label_name);
                        }