You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tcl.apache.org by mx...@apache.org on 2019/12/04 08:23:26 UTC

[tcl-rivet] branch quattuor updated (ba802ce -> bf1bce7)

This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a change to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git.


    from ba802ce  documenting changes to the bridge API
     new 9f804b0  update internals doc to 4.0 code design
     new 012e567  fixed upload example
     new 259872a  Added RivetCache_DeleteEntry function
     new 91a17c4  Fix crash in cache when rvt file is not readable
     new 047088a  fixed crash when rvt file not readable
     new bf1bce7  fixed crash when rvt file not readable

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 ChangeLog                          |  5 +++++
 doc/examples/upload.html           |  2 +-
 doc/xml/internals.xml              | 23 +++++++++++++++++------
 src/mod_rivet_ng/mod_rivet_cache.c | 22 ++++++++++++++++++++++
 src/mod_rivet_ng/mod_rivet_cache.h |  1 +
 src/mod_rivet_ng/rivetCore.c       |  3 +++
 6 files changed, 49 insertions(+), 7 deletions(-)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org


[tcl-rivet] 02/06: fixed upload example

Posted by mx...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a commit to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git

commit 012e5673ccbf51ccb19e4da928f89f0f3c794744
Author: Massimo Manghi <mx...@apache.org>
AuthorDate: Tue Nov 12 17:34:09 2019 +0100

    fixed upload example
---
 doc/examples/upload.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/examples/upload.html b/doc/examples/upload.html
index 5f20953..1e8509c 100644
--- a/doc/examples/upload.html
+++ b/doc/examples/upload.html
@@ -1,4 +1,4 @@
-<form action="foo.rvt" enctype="multipart/form-data" method="post">
+<form action="upload.rvt" enctype="multipart/form-data" method="post">
 <input type="file" name="MyUpload"></input>
 <input type="submit" value="Send File"></input>
 </form>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org


[tcl-rivet] 06/06: fixed crash when rvt file not readable

Posted by mx...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a commit to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git

commit bf1bce7d0824a441a682d3640f6240da39efee7f
Author: Brice Hamon <br...@ydotm.com>
AuthorDate: Sat Nov 30 10:57:18 2019 -0500

    fixed crash when rvt file not readable
---
 ChangeLog | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index aeae1fd..9bfc896 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,4 @@
-2019-11-29 Brice Hamon <br...@apache.org>
+2019-11-29 Brice Hamon <bh...@apache.org>
    * src/mod_rivet_ng/mod_rivet_cache.h: added RivetCache_DeleteEntry
    * src/mod_rivet_ng/mod_rivet_cache.c: 
    * src/mod_rivet_ng/rivetCore.c: fixed crash when rvt file not readable


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org


[tcl-rivet] 01/06: update internals doc to 4.0 code design

Posted by mx...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a commit to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git

commit 9f804b0e3ce0738785a7c11bbc649679c80756ca
Author: Massimo Manghi <mx...@apache.org>
AuthorDate: Mon Oct 14 10:46:39 2019 +0200

    update internals doc to 4.0 code design
---
 doc/xml/internals.xml | 23 +++++++++++++++++------
 1 file changed, 17 insertions(+), 6 deletions(-)

diff --git a/doc/xml/internals.xml b/doc/xml/internals.xml
index 5bec822..d5cd7a3 100644
--- a/doc/xml/internals.xml
+++ b/doc/xml/internals.xml
@@ -1,6 +1,4 @@
-<!-- $Id: $ -->
-
-  <section id="internals">
+<section id="internals">
     <title>Rivet Internals</title>
     <para>
       This section easily falls out of date, as new code is added, old
@@ -144,17 +142,30 @@
 					to have details on how and at what stage this callback is invoked.
 				</listitem>
 				<listitem>
+					<para>
 					<emphasis>thread_interp</emphasis> must be a function returning
 					the interpreter object (a pointer to record of type
 					<command>rivet_thread_interp</command>) associated
 					to a given configuration as stored in a <command>rivet_server_conf*</command>
 					object. This element was temporarily introduced in the 
 					<command>mpm_bridge_table</command> table and should be accessed
-					through the macro RIVET_PEEK_INTERP.
+					through the macro RIVET_PEEK_INTERP.</para>
 					<programlisting>interp_obj = RIVET_PEEK_INTERP(private,private->conf);</programlisting>
-					Every bridge implementation should have its own way to store interpreter data and manage their
+					<para>Every bridge implementation should have its own way to store interpreter data and manage their
 					status. So this macro (and associated function)	should hide from the module core function
-					the specific approach followed in a particular bridge
+					the specific approach followed in a particular bridge</para>
+					<para>The current implementation of this function is used both
+					to store and retrieve a <command>rivet_thread_interp</command> pointer in
+					the bridge internal data structures. For instance this is the function
+					of the prefork bridge</para>
+					<programlisting>rivet_thread_interp* PreforkBridge_Interp (rivet_thread_private* private,
+                                            rivet_server_conf*    conf,
+                                            rivet_thread_interp*  interp)
+{
+    if (interp != NULL) { private->ext->interps[conf->idx] = interp; }
+
+    return private->ext->interps[conf->idx];   
+}</programlisting>
 				</listitem>
 			</itemizedlist>
 		</para>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org


[tcl-rivet] 04/06: Fix crash in cache when rvt file is not readable

Posted by mx...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a commit to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git

commit 91a17c47c0f5e9cd9706af2ea97222ac4ddb802d
Author: Brice Hamon <br...@ydotm.com>
AuthorDate: Fri Nov 29 14:23:52 2019 -0500

    Fix crash in cache when rvt file is not readable
---
 src/mod_rivet_ng/rivetCore.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/mod_rivet_ng/rivetCore.c b/src/mod_rivet_ng/rivetCore.c
index 94ee207..37af097 100644
--- a/src/mod_rivet_ng/rivetCore.c
+++ b/src/mod_rivet_ng/rivetCore.c
@@ -1906,6 +1906,9 @@ TCL_CMD_HEADER( Rivet_UrlScript )
 
         if (result != TCL_OK)
         {
+            // Hash cleanup
+            RivetCache_DeleteEntry(entry);
+
             Tcl_DecrRefCount(script);
             return result;
         }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org


[tcl-rivet] 03/06: Added RivetCache_DeleteEntry function

Posted by mx...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a commit to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git

commit 259872a633a80873faec3c4d54ec2e1b0464d214
Author: Brice Hamon <br...@ydotm.com>
AuthorDate: Fri Nov 29 14:23:16 2019 -0500

    Added RivetCache_DeleteEntry function
---
 src/mod_rivet_ng/mod_rivet_cache.c | 22 ++++++++++++++++++++++
 src/mod_rivet_ng/mod_rivet_cache.h |  1 +
 2 files changed, 23 insertions(+)

diff --git a/src/mod_rivet_ng/mod_rivet_cache.c b/src/mod_rivet_ng/mod_rivet_cache.c
index 732e31e..192378f 100644
--- a/src/mod_rivet_ng/mod_rivet_cache.c
+++ b/src/mod_rivet_ng/mod_rivet_cache.c
@@ -237,3 +237,25 @@ int RivetCache_StoreScript(rivet_thread_interp* rivet_interp, Tcl_HashEntry* ent
     }
     return 0;
 }
+
+/*
+ * -- RivetCache_DeleteEntry
+ *
+ * Cache entry delete. Removes an existing entry from a table. The memory
+ * associated with the entry itself will be freed, but the client is
+ * responsible for any cleanup associated with the entry's value, such as
+ * freeing a structure that it points to.
+ *
+ * Arguments:
+ *      Tcl_HashEntry*       entry object
+ *
+ * Results:
+ *
+ * Side Effects:
+ *
+ */
+
+void RivetCache_DeleteEntry (Tcl_HashEntry *entry)
+{
+    Tcl_DeleteHashEntry (entry);
+}
diff --git a/src/mod_rivet_ng/mod_rivet_cache.h b/src/mod_rivet_ng/mod_rivet_cache.h
index 4e830d4..d30283a 100644
--- a/src/mod_rivet_ng/mod_rivet_cache.h
+++ b/src/mod_rivet_ng/mod_rivet_cache.h
@@ -32,5 +32,6 @@ EXTERN char* RivetCache_MakeKey (apr_pool_t* pool, char*         filename,
 EXTERN Tcl_HashEntry* RivetCache_EntryLookup (rivet_thread_interp* rivet_interp,char* hashKey,int* isNew);
 EXTERN Tcl_Obj* RivetCache_FetchScript (Tcl_HashEntry* entry);
 EXTERN int RivetCache_StoreScript(rivet_thread_interp* rivet_interp, Tcl_HashEntry* entry, Tcl_Obj* script);
+EXTERN void RivetCache_DeleteEntry (Tcl_HashEntry *entry);
 
 #endif /* __mod_rivet_cache_h__ */


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org


[tcl-rivet] 05/06: fixed crash when rvt file not readable

Posted by mx...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mxmanghi pushed a commit to branch quattuor
in repository https://gitbox.apache.org/repos/asf/tcl-rivet.git

commit 047088a8a57a99d802397f7e96859d6cfda09b91
Author: Brice Hamon <br...@ydotm.com>
AuthorDate: Sat Nov 30 10:56:12 2019 -0500

    fixed crash when rvt file not readable
---
 ChangeLog | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 4b9d450..aeae1fd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-11-29 Brice Hamon <br...@apache.org>
+   * src/mod_rivet_ng/mod_rivet_cache.h: added RivetCache_DeleteEntry
+   * src/mod_rivet_ng/mod_rivet_cache.c: 
+   * src/mod_rivet_ng/rivetCore.c: fixed crash when rvt file not readable
+
 2019-10-13 Massimo Manghi <mx...@apache.org>
     * doc/xml/directives.xml: configuration directives table expanded
     * doc/xml/internals.xml: documenting the changes in the bridge API


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tcl.apache.org
For additional commands, e-mail: commits-help@tcl.apache.org