richter 02/02/27 03:58:26
Modified: . Tag: Embperl2c Changes.pod Embperl.pm ep2.h epcfg.h
epdat2.h epdom.c epdom.h epeval.c epinit.c epio.c
epmain.c eputil.c test.pl
Embperl Tag: Embperl2c Object.pm
test/cmp Tag: Embperl2c Execute.htm getsdaturlsess.htm
geturlsess.htm setsdaturlsess.htm
test/conf Tag: Embperl2c httpd.conf.src
test/html Tag: Embperl2c exit.htm
test/html/registry Tag: Embperl2c tied.htm
xsbuilder/maps Tag: Embperl2c ep_structure.map
Removed: test/cmp2 Tag: Embperl2c tied.htm
Log:
session handling
Revision Changes Path
No revision
No revision
1.129.4.47 +3 -0 embperl/Changes.pod
Index: Changes.pod
===================================================================
RCS file: /home/cvs/embperl/Changes.pod,v
retrieving revision 1.129.4.46
retrieving revision 1.129.4.47
diff -u -r1.129.4.46 -r1.129.4.47
--- Changes.pod 25 Feb 2002 11:20:25 -0000 1.129.4.46
+++ Changes.pod 27 Feb 2002 11:58:23 -0000 1.129.4.47
@@ -34,6 +34,9 @@
were always ignored on the first request.
- Renamed configuration directive EMBPERL_FILESMATCH to
EMBPERL_URIMATCH to better describe what it is doing.
+ - exit works now outside of [$ sub $]
+ - New configuration directive EMBPERL_SESSION_MODE allows
+ to configure to pass session inside of the QUERY_STRING
=head1 2.0b5 (BETA) 27. Nov. 2001
1.118.4.91 +3 -3 embperl/Embperl.pm
Index: Embperl.pm
===================================================================
RCS file: /home/cvs/embperl/Embperl.pm,v
retrieving revision 1.118.4.90
retrieving revision 1.118.4.91
diff -u -r1.118.4.90 -r1.118.4.91
--- Embperl.pm 27 Feb 2002 08:19:40 -0000 1.118.4.90
+++ Embperl.pm 27 Feb 2002 11:58:23 -0000 1.118.4.91
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: Embperl.pm,v 1.118.4.90 2002/02/27 08:19:40 richter Exp $
+# $Id: Embperl.pm,v 1.118.4.91 2002/02/27 11:58:23 richter Exp $
#
###################################################################################
@@ -88,11 +88,11 @@
if (!ref $param)
{
- Embperl::Req::ExecuteRequest (defined(&Apache::request)?Apache ->
request:undef, { inputfile => $param, param => [@_]}) ;
+ Embperl::Req::ExecuteRequest (undef, { inputfile => $param, param => [@_]})
;
}
else
{
- Embperl::Req::ExecuteRequest (defined(&Apache::request)?Apache ->
request:undef, $param) ;
+ Embperl::Req::ExecuteRequest (undef, $param) ;
}
}
1.1.2.31 +3 -3 embperl/Attic/ep2.h
Index: ep2.h
===================================================================
RCS file: /home/cvs/embperl/Attic/ep2.h,v
retrieving revision 1.1.2.30
retrieving revision 1.1.2.31
diff -u -r1.1.2.30 -r1.1.2.31
--- ep2.h 26 Feb 2002 20:14:42 -0000 1.1.2.30
+++ ep2.h 27 Feb 2002 11:58:23 -0000 1.1.2.31
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: ep2.h,v 1.1.2.30 2002/02/26 20:14:42 richter Exp $
+# $Id: ep2.h,v 1.1.2.31 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -289,10 +289,10 @@
#ifdef XALAN
- embperl_Xalan_Init (void) ;
+ int embperl_Xalan_Init (void) ;
#endif
#ifdef LIBXSLT
- embperl_LibXSLT_Init (void) ;
+ int embperl_LibXSLT_Init (void) ;
#endif
1.1.2.11 +1 -1 embperl/Attic/epcfg.h
Index: epcfg.h
===================================================================
RCS file: /home/cvs/embperl/Attic/epcfg.h,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -r1.1.2.10 -r1.1.2.11
--- epcfg.h 26 Feb 2002 08:48:42 -0000 1.1.2.10
+++ epcfg.h 27 Feb 2002 11:58:23 -0000 1.1.2.11
@@ -33,6 +33,7 @@
EPCFG_AV (ReqConfig, AV *, pPathAV, PATH, SEPARATOR)
EPCFG_INT (ReqConfig, unsigned, bDebug, DEBUG)
EPCFG_INT (ReqConfig, unsigned, bOptions, OPTIONS)
+EPCFG_INT (ReqConfig, int , nSessionMode, SESSION_MODE)
#endif
@@ -48,7 +49,6 @@
EPCFG_STR(AppConfig, char *, sCookieDomain, COOKIE_DOMAIN)
EPCFG_STR(AppConfig, char *, sCookiePath, COOKIE_PATH)
EPCFG_STR(AppConfig, char *, sCookieExpires, COOKIE_EXPIRES)
-EPCFG_INT(AppConfig, int , nSessionMode, SESSION_MODE)
EPCFG_STR(AppConfig, char *, sLog, LOG)
EPCFG_INT(AppConfig, unsigned,bDebug, DEBUG)
EPCFG_INT(AppConfig, bool, bMaildebug, MAILDEBUG)
1.1.2.29 +2 -2 embperl/Attic/epdat2.h
Index: epdat2.h
===================================================================
RCS file: /home/cvs/embperl/Attic/epdat2.h,v
retrieving revision 1.1.2.28
retrieving revision 1.1.2.29
diff -u -r1.1.2.28 -r1.1.2.29
--- epdat2.h 26 Feb 2002 20:14:42 -0000 1.1.2.28
+++ epdat2.h 27 Feb 2002 11:58:23 -0000 1.1.2.29
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epdat2.h,v 1.1.2.28 2002/02/26 20:14:42 richter Exp $
+# $Id: epdat2.h,v 1.1.2.29 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -102,6 +102,7 @@
AV * pPathAV ;
unsigned bDebug ;
unsigned bOptions ;
+ int nSessionMode ; /**< sets how to pass the session id, see
smodeXXX constants */
} tReqConfig ;
typedef struct tReqParam
@@ -130,7 +131,6 @@
char * sCookieDomain ;
char * sCookiePath ;
char * sCookieExpires ;
- int nSessionMode ;
char * sLog ;
unsigned bDebug ;
char * sMailhost ;
1.4.2.82 +126 -105 embperl/Attic/epdom.c
Index: epdom.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epdom.c,v
retrieving revision 1.4.2.81
retrieving revision 1.4.2.82
diff -u -r1.4.2.81 -r1.4.2.82
--- epdom.c 12 Feb 2002 21:02:42 -0000 1.4.2.81
+++ epdom.c 27 Feb 2002 11:58:23 -0000 1.4.2.82
@@ -9,7 +9,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epdom.c,v 1.4.2.81 2002/02/12 21:02:42 richter Exp $
+# $Id: epdom.c,v 1.4.2.82 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -1373,130 +1373,143 @@
if (nRunCheckpoint > nCompileCheckpoint)
{
tNodeData * pCompileNode = Node_selfLevel (a, pDomTree,
pCheckpoints[nCompileCheckpoint].xNode, r -> Component.nCurrRepeatLevel) ;
- tNodeData * pRunNode = Node_selfLevel (a, pDomTree,
pCheckpoints[nRunCheckpoint].xNode, r -> Component.nCurrRepeatLevel) ;
- tNodeData * pPrevNode = Node_selfPreviousSibling (a, pDomTree,
pCompileNode, r -> Component.nCurrRepeatLevel) ;
-
- tNodeData * pCompileParent = NodeAttr_selfParentNode (pDomTree,
pCompileNode, r -> Component.nCurrRepeatLevel) ;
- tNodeData * pRunParent = NodeAttr_selfParentNode (pDomTree, pRunNode, r
-> Component.nCurrRepeatLevel) ;
-
- if (pPrevNode)
- pPrevNode = Node_selfCondCloneNode (a, pDomTree, pPrevNode, r ->
Component.nCurrRepeatLevel) ;
- else
+ if (pCheckpoints[nRunCheckpoint].xNode == -1)
{
- pPrevNode = Node_selfCondCloneNode (a, pDomTree, pCompileNode, r ->
Component.nCurrRepeatLevel) ;
- pPrevNode -> bFlags |= nflgIgnore ;
- }
-
- if (pCompileParent -> xNdx == pRunParent -> xNdx )
- {
- pRunNode = Node_selfCondCloneNode (a, pDomTree, pRunNode, r ->
Component.nCurrRepeatLevel) ;
-
- pRunNode -> xPrev = pPrevNode -> xNdx ;
- pPrevNode -> xNext = pRunNode -> xNdx ;
- pRunNode -> bFlags |= nflgNewLevelPrev ;
- pPrevNode -> bFlags |= nflgNewLevelNext ;
-
+ pCompileNode = Node_selfCondCloneNode (a, pDomTree, pCompileNode , r ->
Component.nCurrRepeatLevel) ;
+ pCompileNode -> bFlags |= nflgStopOutput ;
if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
- lprintf (a, "[%d]Checkpoint: jump forward DomTree=%d Index=%d
Node=%d(%d) Line=%d -> Index=%d Node=%d(%d) Line=%d SVs=%d\n",
+ lprintf (a, "[%d]Checkpoint: stop output DomTree=%d Index=%d
Node=%d(%d) Line=%d\n",
a -> pThread -> nPid, r -> Component.xCurrDomTree,
nCompileCheckpoint,
- pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
- pPrevNode -> nLinenumber, nRunCheckpoint,
- pRunNode -> xNdx, xNode_selfLevelNull(pDomTree,pRunNode),
- pRunNode -> nLinenumber, sv_count) ;
-
+ pCompileNode -> xNdx,
xNode_selfLevelNull(pDomTree,pCompileNode),
+ pCompileNode -> nLinenumber) ;
+ return ;
}
- else if (pCompileParent && pRunParent)
- {
- tNodeData * pCompileParent2 = NodeAttr_selfParentNode (pDomTree,
pCompileParent, r -> Component.nCurrRepeatLevel) ;
- tNodeData * pRunParent2 = NodeAttr_selfParentNode (pDomTree,
pRunParent, r -> Component.nCurrRepeatLevel) ;
+ else
+ {
+ tNodeData * pRunNode = Node_selfLevel (a, pDomTree,
pCheckpoints[nRunCheckpoint].xNode, r -> Component.nCurrRepeatLevel) ;
+ tNodeData * pPrevNode = Node_selfPreviousSibling (a, pDomTree,
pCompileNode, r -> Component.nCurrRepeatLevel) ;
+
+ tNodeData * pCompileParent = NodeAttr_selfParentNode (pDomTree,
pCompileNode, r -> Component.nCurrRepeatLevel) ;
+ tNodeData * pRunParent = NodeAttr_selfParentNode (pDomTree,
pRunNode, r -> Component.nCurrRepeatLevel) ;
- if (pCompileParent2 && pCompileParent2 -> xNdx == pRunParent -> xNdx)
- {
- pPrevNode = Node_selfCondCloneNode (a, pDomTree, pCompileParent, r ->
Component.nCurrRepeatLevel) ;
- pRunNode = Node_selfCondCloneNode (a, pDomTree, pRunNode, r ->
Component.nCurrRepeatLevel) ;
- pRunNode -> xPrev = pPrevNode -> xNdx ;
- pPrevNode -> xNext = pRunNode -> xNdx ;
- pPrevNode -> xChilds = 0 ;
- pRunNode -> bFlags |= nflgNewLevelPrev ;
- pPrevNode -> bFlags |= nflgNewLevelNext ;
+ if (pPrevNode)
+ pPrevNode = Node_selfCondCloneNode (a, pDomTree, pPrevNode, r ->
Component.nCurrRepeatLevel) ;
+ else
+ {
+ pPrevNode = Node_selfCondCloneNode (a, pDomTree, pCompileNode, r ->
Component.nCurrRepeatLevel) ;
+ pPrevNode -> bFlags |= nflgIgnore ;
+ }
- if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
- lprintf (a, "[%d]Checkpoint: jump forward last child DomTree=%d
Index=%d Node=%d(%d) Line=%d -> Index=%d Node=%d(%d) Line=%d SVs=%d\n",
- a -> pThread -> nPid, r -> Component.xCurrDomTree,
nCompileCheckpoint,
- pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
- pPrevNode -> nLinenumber, nRunCheckpoint,
- pRunNode -> xNdx, xNode_selfLevelNull(pDomTree,pRunNode),
- pRunNode -> nLinenumber, sv_count) ;
- }
- else if (pCompileParent2 && pRunParent2 && pCompileParent2 -> xNdx ==
pRunParent2 -> xNdx )
+ if (pCompileParent -> xNdx == pRunParent -> xNdx )
+ {
+ pRunNode = Node_selfCondCloneNode (a, pDomTree, pRunNode, r ->
Component.nCurrRepeatLevel) ;
+
+ pRunNode -> xPrev = pPrevNode -> xNdx ;
+ pPrevNode -> xNext = pRunNode -> xNdx ;
+ pRunNode -> bFlags |= nflgNewLevelPrev ;
+ pPrevNode -> bFlags |= nflgNewLevelNext ;
+
+ if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
+ lprintf (a, "[%d]Checkpoint: jump forward DomTree=%d Index=%d
Node=%d(%d) Line=%d -> Index=%d Node=%d(%d) Line=%d SVs=%d\n",
+ a -> pThread -> nPid, r -> Component.xCurrDomTree,
nCompileCheckpoint,
+ pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
+ pPrevNode -> nLinenumber, nRunCheckpoint,
+ pRunNode -> xNdx,
xNode_selfLevelNull(pDomTree,pRunNode),
+ pRunNode -> nLinenumber, sv_count) ;
+
+ }
+ else if (pCompileParent && pRunParent)
{
- if (pRunParent -> nType != ntypAttr && pCompileParent -> nType !=
ntypAttr)
+ tNodeData * pCompileParent2 = NodeAttr_selfParentNode (pDomTree,
pCompileParent, r -> Component.nCurrRepeatLevel) ;
+ tNodeData * pRunParent2 = NodeAttr_selfParentNode (pDomTree,
pRunParent, r -> Component.nCurrRepeatLevel) ;
+
+ if (pCompileParent2 && pCompileParent2 -> xNdx == pRunParent ->
xNdx)
{
- pRunParent = Node_selfCondCloneNode (a, pDomTree, pRunParent, r ->
Component.nCurrRepeatLevel) ;
- pCompileParent = Node_selfCondCloneNode (a, pDomTree,
pCompileParent, r -> Component.nCurrRepeatLevel) ;
- pRunParent -> xPrev = pCompileParent -> xNdx ;
- pCompileParent -> xNext = pRunParent -> xNdx ;
- pRunParent -> bFlags |= nflgNewLevelPrev ;
- pCompileParent -> bFlags |= nflgNewLevelNext ;
+ pPrevNode = Node_selfCondCloneNode (a, pDomTree, pCompileParent, r
-> Component.nCurrRepeatLevel) ;
+ pRunNode = Node_selfCondCloneNode (a, pDomTree, pRunNode, r ->
Component.nCurrRepeatLevel) ;
+ pRunNode -> xPrev = pPrevNode -> xNdx ;
+ pPrevNode -> xNext = pRunNode -> xNdx ;
+ pPrevNode -> xChilds = 0 ;
+ pRunNode -> bFlags |= nflgNewLevelPrev ;
+ pPrevNode -> bFlags |= nflgNewLevelNext ;
+
+ if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
+ lprintf (a, "[%d]Checkpoint: jump forward last child
DomTree=%d Index=%d Node=%d(%d) Line=%d -> Index=%d Node=%d(%d) Line=%d SVs=%d\n",
+ a -> pThread -> nPid, r -> Component.xCurrDomTree,
nCompileCheckpoint,
+ pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
+ pPrevNode -> nLinenumber, nRunCheckpoint,
+ pRunNode -> xNdx,
xNode_selfLevelNull(pDomTree,pRunNode),
+ pRunNode -> nLinenumber, sv_count) ;
}
- else
- {
- int nCompile = Attr_selfAttrNum(((tAttrData *)pCompileParent)) ;
- int nRun = Attr_selfAttrNum(((tAttrData *)pRunParent)) ;
- int i ;
+ else if (pCompileParent2 && pRunParent2 && pCompileParent2 -> xNdx
== pRunParent2 -> xNdx )
+ {
+ if (pRunParent -> nType != ntypAttr && pCompileParent -> nType !=
ntypAttr)
+ {
+ pRunParent = Node_selfCondCloneNode (a, pDomTree, pRunParent,
r -> Component.nCurrRepeatLevel) ;
+ pCompileParent = Node_selfCondCloneNode (a, pDomTree,
pCompileParent, r -> Component.nCurrRepeatLevel) ;
+ pRunParent -> xPrev = pCompileParent -> xNdx ;
+ pCompileParent -> xNext = pRunParent -> xNdx ;
+ pRunParent -> bFlags |= nflgNewLevelPrev ;
+ pCompileParent -> bFlags |= nflgNewLevelNext ;
+ }
+ else
+ {
+ int nCompile = Attr_selfAttrNum(((tAttrData *)pCompileParent))
;
+ int nRun = Attr_selfAttrNum(((tAttrData *)pRunParent)) ;
+ int i ;
- pCompileParent2 = Node_selfLevel (a, pDomTree, pCompileParent2 ->
xNdx, r -> Component.nCurrRepeatLevel) ;
- pCompileParent2 = Node_selfCondCloneNode (a, pDomTree,
pCompileParent2, r -> Component.nCurrRepeatLevel) ;
+ pCompileParent2 = Node_selfLevel (a, pDomTree, pCompileParent2
-> xNdx, r -> Component.nCurrRepeatLevel) ;
+ pCompileParent2 = Node_selfCondCloneNode (a, pDomTree,
pCompileParent2, r -> Component.nCurrRepeatLevel) ;
- for (i = nRun - 1 ; i > nCompile; i--)
- {
- if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a
-> Config.bDebug) & dbgCheckpoint)
+ for (i = nRun - 1 ; i > nCompile; i--)
{
- tAttrData * pAttr = Element_selfGetNthAttribut (a,
pDomTree, pCompileParent2, i) ;
- lprintf (a, "[%d]Checkpoint: remove attr #%d flags=%x
attr=%d node=%d\n", a -> pThread -> nPid, i, pAttr -> bFlags, pAttr ->xNdx,
pCompileParent2 -> xNdx) ;
+ if ((a -> pCurrReq?a -> pCurrReq ->
Component.Config.bDebug:a -> Config.bDebug) & dbgCheckpoint)
+ {
+ tAttrData * pAttr = Element_selfGetNthAttribut (a,
pDomTree, pCompileParent2, i) ;
+ lprintf (a, "[%d]Checkpoint: remove attr #%d flags=%x
attr=%d node=%d\n", a -> pThread -> nPid, i, pAttr -> bFlags, pAttr ->xNdx,
pCompileParent2 -> xNdx) ;
+ }
+ Element_selfRemoveNthAttribut (a, pDomTree,
pCompileParent2, r -> Component.nCurrRepeatLevel, i) ;
}
- Element_selfRemoveNthAttribut (a, pDomTree, pCompileParent2, r
-> Component.nCurrRepeatLevel, i) ;
- }
- }
+ }
- pPrevNode -> xNext = Node_selfFirstChild (a, pDomTree, pCompileParent,
r -> Component.nCurrRepeatLevel) -> xNdx ;
- pPrevNode -> bFlags |= nflgNewLevelNext ;
- if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
- lprintf (a, "[%d]Checkpoint: jump forward2 DomTree=%d Index=%d
Node=%d(%d),%d,%d Line=%d -> Index=%d Node=%d(%d),%d,%d Line=%d SVs=%d\n",
- a -> pThread -> nPid, r -> Component.xCurrDomTree,
nCompileCheckpoint,
- pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
- pCompileParent -> xNdx,
pCompileParent2?pCompileParent2 -> xNdx:-1,
- pPrevNode -> nLinenumber,
- nRunCheckpoint, pRunNode -> xNdx,
xNode_selfLevelNull(pDomTree,pRunNode),
- pRunParent -> xNdx, pRunParent2?pRunParent2 ->
xNdx:-1,
- pRunNode -> nLinenumber, sv_count) ;
+ pPrevNode -> xNext = Node_selfFirstChild (a, pDomTree,
pCompileParent, r -> Component.nCurrRepeatLevel) -> xNdx ;
+ pPrevNode -> bFlags |= nflgNewLevelNext ;
+ if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a
-> Config.bDebug) & dbgCheckpoint)
+ lprintf (a, "[%d]Checkpoint: jump forward2 DomTree=%d
Index=%d Node=%d(%d),%d,%d Line=%d -> Index=%d Node=%d(%d),%d,%d Line=%d SVs=%d\n",
+ a -> pThread -> nPid, r ->
Component.xCurrDomTree, nCompileCheckpoint,
+ pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
+ pCompileParent -> xNdx,
pCompileParent2?pCompileParent2 -> xNdx:-1,
+ pPrevNode -> nLinenumber,
+ nRunCheckpoint, pRunNode -> xNdx,
xNode_selfLevelNull(pDomTree,pRunNode),
+ pRunParent -> xNdx, pRunParent2?pRunParent2 ->
xNdx:-1,
+ pRunNode -> nLinenumber, sv_count) ;
+ }
+ else
+ {
+ if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a
-> Config.bDebug) & dbgCheckpoint)
+ lprintf (a, "[%d]Checkpoint: jump forward2 DomTree=%d
Index=%d Node=%d(%d),%d,%d Line=%d -> Index=%d Node=%d(%d),%d,%d Line=%d SVs=%d\n",
+ a -> pThread -> nPid, r ->
Component.xCurrDomTree, nCompileCheckpoint,
+ pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
+ pCompileParent -> xNdx,
pCompileParent2?pCompileParent2 -> xNdx:-1,
+ pPrevNode -> nLinenumber,
+ nRunCheckpoint, pRunNode -> xNdx,
xNode_selfLevelNull(pDomTree,pRunNode),
+ pRunParent -> xNdx, pRunParent2?pRunParent2 ->
xNdx:-1,
+ pRunNode -> nLinenumber, sv_count) ;
+
+ mydie (a, "Unstrutured forward jump") ;
+ }
}
else
{
if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
- lprintf (a, "[%d]Checkpoint: jump forward2 DomTree=%d Index=%d
Node=%d(%d),%d,%d Line=%d -> Index=%d Node=%d(%d),%d,%d Line=%d SVs=%d\n",
- a -> pThread -> nPid, r -> Component.xCurrDomTree,
nCompileCheckpoint,
- pPrevNode -> xNdx,
xNode_selfLevelNull(pDomTree,pPrevNode),
- pCompileParent -> xNdx,
pCompileParent2?pCompileParent2 -> xNdx:-1,
- pPrevNode -> nLinenumber,
- nRunCheckpoint, pRunNode -> xNdx,
xNode_selfLevelNull(pDomTree,pRunNode),
- pRunParent -> xNdx, pRunParent2?pRunParent2 ->
xNdx:-1,
- pRunNode -> nLinenumber, sv_count) ;
+ lprintf (a, "[%d]Checkpoint: jump forward DomTree=%d Index=%d
Node=%d Line=%d -> Index=%d Node=%d Line=%d SVs=%d\n", a -> pThread -> nPid, r ->
Component.xCurrDomTree, nCompileCheckpoint, pPrevNode -> xNdx, pPrevNode ->
nLinenumber, nRunCheckpoint, pRunNode -> xNdx, pRunNode -> nLinenumber, sv_count) ;
- mydie (a, "Unstrutured forward jump") ;
+ mydie (a, "Unstrutured forward jump (no parents)") ;
}
+ r -> Component.nCurrCheckpoint = nRunCheckpoint + 1 ;
+ return ;
}
- else
- {
- if ((a -> pCurrReq?a -> pCurrReq -> Component.Config.bDebug:a ->
Config.bDebug) & dbgCheckpoint)
- lprintf (a, "[%d]Checkpoint: jump forward DomTree=%d Index=%d
Node=%d Line=%d -> Index=%d Node=%d Line=%d SVs=%d\n", a -> pThread -> nPid, r ->
Component.xCurrDomTree, nCompileCheckpoint, pPrevNode -> xNdx, pPrevNode ->
nLinenumber, nRunCheckpoint, pRunNode -> xNdx, pRunNode -> nLinenumber, sv_count) ;
-
- mydie (a, "Unstrutured forward jump (no parents)") ;
- }
- r -> Component.nCurrCheckpoint = nRunCheckpoint + 1 ;
- return ;
}
-
{
tNodeData * pCompileNode = Node_selfLevel (a, pDomTree,
pCheckpoints[nCompileCheckpoint].xNode, r -> Component.nCurrRepeatLevel) ;
tNodeData * pRunNode = Node_selfLevel (a, pDomTree,
pCheckpoints[nRunCheckpoint].xNode, r -> Component.nCurrRepeatLevel+1) ;
@@ -3191,7 +3204,15 @@
while (pNode)
{
- if (r -> Component.Config.bDebug & dbgOutput)
+ if (pNode -> bFlags & nflgStopOutput)
+ {
+ if (r -> Component.Config.bDebug & dbgOutput)
+ lprintf (a, "[%d]toString: Node=%d(%d) RepeatLevel=%d type=%d
flags=%x -> stop output\n", r -> pThread -> nPid, pNode -> xNdx,
xNode_selfLevelNull(pDomTree,pNode), nRepeatLevel, pNode -> nType, pNode -> bFlags) ;
+
+ return NULL ;
+ }
+
+ if (r -> Component.Config.bDebug & dbgOutput)
lprintf (a, "[%d]toString: Node=%d(%d) RepeatLevel=%d type=%d flags=%x
text=>%s<= (#%d) SVs=%d\n", r -> pThread -> nPid, pNode -> xNdx,
xNode_selfLevelNull(pDomTree,pNode), nRepeatLevel, pNode -> nType, pNode -> bFlags,
Ndx2String (pNode -> nText), pNode -> nText, sv_count) ;
if (pNode -> nType == ntypDocumentFraq)
@@ -3368,7 +3389,7 @@
}
}
- pLast = pNode ;
+ pLast = pNode ;
pNode = Node_selfNextSibling (a, pDomTree, pNode, nRepeatLevel) ;
if (pNode && pLast -> bFlags & nflgNewLevelNext)
1.4.2.49 +3 -2 embperl/Attic/epdom.h
Index: epdom.h
===================================================================
RCS file: /home/cvs/embperl/Attic/epdom.h,v
retrieving revision 1.4.2.48
retrieving revision 1.4.2.49
diff -u -r1.4.2.48 -r1.4.2.49
--- epdom.h 12 Feb 2002 21:02:42 -0000 1.4.2.48
+++ epdom.h 27 Feb 2002 11:58:23 -0000 1.4.2.49
@@ -9,7 +9,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epdom.h,v 1.4.2.48 2002/02/12 21:02:42 richter Exp $
+# $Id: epdom.h,v 1.4.2.49 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -144,7 +144,8 @@
nflgEscXML = 8,
nflgIgnore = 16, /**< Ignore this node */
nflgNewLevelNext = 32, /**< Next sibling has new RepeatLevel */
- nflgNewLevelPrev = 64 /**< Previous sibling has new RepeatLevel */
+ nflgNewLevelPrev = 64, /**< Previous sibling has new RepeatLevel */
+ nflgStopOutput = 128 /**< Do not make any further output after this node */
} ;
enum tAttrFlags
1.23.4.24 +23 -2 embperl/epeval.c
Index: epeval.c
===================================================================
RCS file: /home/cvs/embperl/epeval.c,v
retrieving revision 1.23.4.23
retrieving revision 1.23.4.24
diff -u -r1.23.4.23 -r1.23.4.24
--- epeval.c 27 Feb 2002 08:19:41 -0000 1.23.4.23
+++ epeval.c 27 Feb 2002 11:58:23 -0000 1.23.4.24
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epeval.c,v 1.23.4.23 2002/02/27 08:19:41 richter Exp $
+# $Id: epeval.c,v 1.23.4.24 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -506,6 +506,8 @@
if (*pRet)
SvREFCNT_dec (*pRet) ;
*pRet = NULL ;
+ if (r -> Component.Config.bDebug & dbgEval)
+ lprintf (r -> pApp, "[%d]EVAL> exit passed through\n", r -> pThread ->
nPid) ;
return rcExit ;
}
@@ -523,7 +525,15 @@
/*struct magic * m = SvMAGIC (pSVErr) ;*/
- sv_unmagic(pSVErr,'U');
+ tDomTree * pDomTree = DomTree_self (r -> Component.xCurrDomTree) ;
+ tIndex n = ArrayGetSize (r -> pApp, pDomTree -> pCheckpoints) ;
+ if (n > 2)
+ DomTree_checkpoint (r, n-1) ;
+
+ if (r -> Component.Config.bDebug & dbgEval)
+ lprintf (r -> pApp, "[%d]EVAL> exit called\n", r -> pThread ->
nPid) ;
+
+ sv_unmagic(pSVErr,'U');
sv_setpv(pSVErr,"");
r -> Component.Config.bOptions |= optNoUncloseWarn ;
@@ -771,6 +781,8 @@
if (*pRet)
SvREFCNT_dec (*pRet) ;
*pRet = NULL ;
+ if (r -> Component.Config.bDebug & dbgEval)
+ lprintf (r -> pApp, "[%d]EVAL> exit passed through\n", r -> pThread ->
nPid) ;
return rcExit ;
}
@@ -788,6 +800,15 @@
/*struct magic * m = SvMAGIC (pSVErr) ;*/
+ tDomTree * pDomTree = DomTree_self (r -> Component.xCurrDomTree) ;
+ tIndex n = ArrayGetSize (r -> pApp, pDomTree -> pCheckpoints) ;
+ lprintf (r -> pApp, "[%d]EVAL> exit called n = %d\n", r -> pThread
-> nPid, n) ;
+ if (n > 2)
+ DomTree_checkpoint (r, n-1) ;
+
+ if (r -> Component.Config.bDebug & dbgEval)
+ lprintf (r -> pApp, "[%d]EVAL> exit called\n", r -> pThread ->
nPid) ;
+
sv_unmagic(pSVErr,'U');
sv_setpv(pSVErr,"");
1.1.2.32 +81 -77 embperl/Attic/epinit.c
Index: epinit.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epinit.c,v
retrieving revision 1.1.2.31
retrieving revision 1.1.2.32
diff -u -r1.1.2.31 -r1.1.2.32
--- epinit.c 27 Feb 2002 08:19:41 -0000 1.1.2.31
+++ epinit.c 27 Feb 2002 11:58:23 -0000 1.1.2.32
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epinit.c,v 1.1.2.31 2002/02/27 08:19:41 richter Exp $
+# $Id: epinit.c,v 1.1.2.32 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -204,7 +204,6 @@
pCfg -> sAppName = "Embperl" ;
pCfg -> sCookieName = "EMBPERL_UID" ;
pCfg -> sSessionHandlerClass = "Apache::SessionX" ;
- pCfg -> nSessionMode = smodeUDatCookie ;
#ifdef WIN32
pCfg -> sLog = "\\embperl.log" ;
#else
@@ -777,6 +776,7 @@
{
pCfg -> cMultFieldSep = '\t' ;
+ pCfg -> nSessionMode = smodeUDatCookie ;
}
@@ -890,12 +890,13 @@
else
{
char * p = strchr(pVal, ':') ;
- if (p)
+ if (p && *p)
{
r -> sSessionUserID = ep_pstrdup (r -> pPool, p +
1) ;
*p = '\0' ;
}
- r -> sSessionStateID = ep_pstrdup (r -> pPool, pVal) ;
+ if (*pVal)
+ r -> sSessionStateID = ep_pstrdup (r -> pPool,
pVal) ;
}
}
@@ -1062,6 +1063,78 @@
}
+/*---------------------------------------------------------------------------
+* embperl_LogStartReq
+*/
+/*!
+*
+* \_en
+* Log request startup, headers and environment
+* \endif
+*
+* \_de
+* Logged den Requeststart, HTTP-Header und Umgebungsvariablen
+* \endif
+*
+* ------------------------------------------------------------------------ */
+
+
+static void embperl_LogStartReq (/*i/o*/ req * r)
+
+ {
+ epTHX ;
+
+ if (r -> Config.bDebug)
+ {
+ time_t t = time(NULL) ;
+ lprintf (r -> pApp, "[%d]REQ: ***** Start Request at %s", r -> pThread ->
nPid, ctime (&t)) ;
+ lprintf (r -> pApp, "[%d]Use App: %s\n", r -> pApp -> pThread -> nPid, r
-> pApp -> Config.sAppName) ;
+#ifdef DMALLOC
+ dmalloc_message ("[%d]REQ: Start Request at %s\n", r -> pThread -> nPid,
ctime (time(NULL))) ;
+#endif
+ }
+
+
+
+#ifdef APACHE
+ if (r -> pApacheReq && (r -> Config.bDebug & dbgHeadersIn))
+ {
+ int i;
+ array_header *hdrs_arr;
+ table_entry *hdrs;
+
+ hdrs_arr = table_elts (r -> pApacheReq->headers_in);
+ hdrs = (table_entry *)hdrs_arr->elts;
+
+ lprintf (r -> pApp, "[%d]HDR: %d\n", r -> pThread -> nPid,
hdrs_arr->nelts) ;
+ for (i = 0; i < hdrs_arr->nelts; ++i)
+ if (hdrs[i].key)
+ lprintf (r -> pApp, "[%d]HDR: %s=%s\n", r -> pThread -> nPid,
hdrs[i].key, hdrs[i].val) ;
+ }
+#endif
+ if (r -> Config.bDebug & dbgEnv)
+ {
+ SV * psv ;
+ HE * pEntry ;
+ char * pKey ;
+ I32 l ;
+ int savewarn = dowarn ;
+ dowarn = 0 ; /* no warnings here */
+
+ hv_iterinit (r -> pThread -> pEnvHash) ;
+ while ((pEntry = hv_iternext (r -> pThread -> pEnvHash)))
+ {
+ pKey = hv_iterkey (pEntry, &l) ;
+ psv = hv_iterval (r -> pThread -> pEnvHash, pEntry) ;
+
+ lprintf (r -> pApp, "[%d]ENV: %s=%s\n", r -> pThread -> nPid,
pKey, SvPV (psv, na)) ;
+ }
+ dowarn = savewarn ;
+ }
+
+ }
+
+
/*---------------------------------------------------------------------------
* embperl_SetupRequest
@@ -1195,10 +1268,13 @@
hv_clear (pThread -> pHeaderHash) ;
+ embperl_LogStartReq (r) ;
+
embperl_SetupFormData (r) ;
if (r -> sSessionUserID)
{
+ tainted = 0 ;
PUSHMARK(sp);
XPUSHs(pApp -> pUserObj);
XPUSHs(sv_2mortal(newSVpv(r -> sSessionUserID, 0)));
@@ -1208,6 +1284,7 @@
if (r -> sSessionStateID)
{
+ tainted = 0 ;
PUSHMARK(sp);
XPUSHs(pApp -> pStateObj);
XPUSHs(sv_2mortal(newSVpv(r -> sSessionStateID, 0)));
@@ -1711,77 +1788,6 @@
/*---------------------------------------------------------------------------
-* embperl_LogStartReq
-*/
-/*!
-*
-* \_en
-* Log request startup, headers and environment
-* \endif
-*
-* \_de
-* Logged den Requeststart, HTTP-Header und Umgebungsvariablen
-* \endif
-*
-* ------------------------------------------------------------------------ */
-
-
-static void embperl_LogStartReq (/*i/o*/ req * r)
-
- {
- epTHX ;
-
- if (r -> Config.bDebug)
- {
- time_t t = time(NULL) ;
- lprintf (r -> pApp, "[%d]REQ: Start Request at %s\n", r -> pThread ->
nPid, ctime (&t)) ;
-#ifdef DMALLOC
- dmalloc_message ("[%d]REQ: Start Request at %s\n", r -> pThread -> nPid,
ctime (time(NULL))) ;
-#endif
- }
-
-
-
-#ifdef APACHE
- if (r -> pApacheReq && (r -> Config.bDebug & dbgHeadersIn))
- {
- int i;
- array_header *hdrs_arr;
- table_entry *hdrs;
-
- hdrs_arr = table_elts (r -> pApacheReq->headers_in);
- hdrs = (table_entry *)hdrs_arr->elts;
-
- lprintf (r -> pApp, "[%d]HDR: %d\n", r -> pThread -> nPid,
hdrs_arr->nelts) ;
- for (i = 0; i < hdrs_arr->nelts; ++i)
- if (hdrs[i].key)
- lprintf (r -> pApp, "[%d]HDR: %s=%s\n", r -> pThread -> nPid,
hdrs[i].key, hdrs[i].val) ;
- }
-#endif
- if (r -> Config.bDebug & dbgEnv)
- {
- SV * psv ;
- HE * pEntry ;
- char * pKey ;
- I32 l ;
- int savewarn = dowarn ;
- dowarn = 0 ; /* no warnings here */
-
- hv_iterinit (r -> pThread -> pEnvHash) ;
- while ((pEntry = hv_iternext (r -> pThread -> pEnvHash)))
- {
- pKey = hv_iterkey (pEntry, &l) ;
- psv = hv_iterval (r -> pThread -> pEnvHash, pEntry) ;
-
- lprintf (r -> pApp, "[%d]ENV: %s=%s\n", r -> pThread -> nPid,
pKey, SvPV (psv, na)) ;
- }
- dowarn = savewarn ;
- }
-
- }
-
-
-/*---------------------------------------------------------------------------
* embperl_InitRequest
*/
/*!
@@ -1849,8 +1855,6 @@
r -> pApacheConfig = pApacheCfg ;
*ppReq = r ;
-
- embperl_LogStartReq (r) ;
if (r -> Config.pAllow || r -> Config.pUriMatch)
{
1.16.4.9 +2 -2 embperl/epio.c
Index: epio.c
===================================================================
RCS file: /home/cvs/embperl/epio.c,v
retrieving revision 1.16.4.8
retrieving revision 1.16.4.9
diff -u -r1.16.4.8 -r1.16.4.9
--- epio.c 25 Jan 2002 07:04:31 -0000 1.16.4.8
+++ epio.c 27 Feb 2002 11:58:23 -0000 1.16.4.9
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epio.c,v 1.16.4.8 2002/01/25 07:04:31 richter Exp $
+# $Id: epio.c,v 1.16.4.9 2002/02/27 11:58:23 richter Exp $
#
###################################################################################*/
@@ -969,7 +969,7 @@
a -> lfd = NULL ;
- if (a -> pThread -> pCurrReq && a -> pThread -> pCurrReq ->
Component.Config.bDebug == 0)
+ if (a -> pThread -> pCurrReq && a -> Config.bDebug == 0)
return ok ; /* never write to logfile if debugging is disabled */
if (!a -> Config.sLog && a -> Config.sLog[0] == '\0')
1.75.4.104 +6 -5 embperl/epmain.c
Index: epmain.c
===================================================================
RCS file: /home/cvs/embperl/epmain.c,v
retrieving revision 1.75.4.103
retrieving revision 1.75.4.104
diff -u -r1.75.4.103 -r1.75.4.104
--- epmain.c 27 Feb 2002 08:19:41 -0000 1.75.4.103
+++ epmain.c 27 Feb 2002 11:58:24 -0000 1.75.4.104
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epmain.c,v 1.75.4.103 2002/02/27 08:19:41 richter Exp $
+# $Id: epmain.c,v 1.75.4.104 2002/02/27 11:58:24 richter Exp $
#
###################################################################################*/
@@ -706,7 +706,7 @@
}
- if ((r -> pApp -> Config.nSessionMode & smodeSDatParam) && !r ->
Component.pPrev)
+ if ((r -> Config.nSessionMode & smodeSDatParam) && !r -> Component.pPrev)
{
char * pCookie = CreateSessionCookie (r, r -> pApp -> pStateObj, 's', 0) ;
/* lprintf (r -> pApp, "opt %x optadd %x options %x cookie %s\n",
optAddStateSessionToLinks, r -> Component.Config.bOptions & optAddStateSessionToLinks,
r -> Component.Config.bOptions, SvPV(pCookie, l)) ; */
@@ -714,7 +714,7 @@
r -> sSessionID = ep_pstrcat (r -> pPool, r -> pApp ->
Config.sCookieName, "=", pCookie, NULL) ;
}
- if ((r -> pApp -> Config.nSessionMode & smodeUDatParam) && !r ->
Component.pPrev)
+ if ((r -> Config.nSessionMode & smodeUDatParam) && !r -> Component.pPrev)
{
char * pCookie = CreateSessionCookie (r, r -> pApp -> pUserObj, 'u', 0) ;
if (pCookie)
@@ -801,7 +801,7 @@
epTHX_
char * pCookie = NULL ;
- if (r -> pApp -> Config.nSessionMode & smodeUDatCookie)
+ if (r -> Config.nSessionMode & smodeUDatCookie)
pCookie = CreateSessionCookie (r, r -> pApp -> pUserObj, 'u', 1) ;
#ifdef APACHE
@@ -1176,6 +1176,7 @@
int num ;
dSP ;
+ tainted = 0 ;
if (!pRecipe || !SvOK(pRecipe))
pRecipe = sv_2mortal(newSVpv("Embperl", 7)) ;
@@ -1338,7 +1339,7 @@
if ((c -> Config.bOptions & optReturnError) && r -> bError)
{
#ifdef APACHE
- if (r -> pApacheReqSV)
+ if (r -> pApacheReq && r -> pApacheReqSV)
{
dSP ;
PUSHMARK(sp);
1.15.4.48 +3 -2 embperl/eputil.c
Index: eputil.c
===================================================================
RCS file: /home/cvs/embperl/eputil.c,v
retrieving revision 1.15.4.47
retrieving revision 1.15.4.48
diff -u -r1.15.4.47 -r1.15.4.48
--- eputil.c 27 Feb 2002 08:19:41 -0000 1.15.4.47
+++ eputil.c 27 Feb 2002 11:58:24 -0000 1.15.4.48
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: eputil.c,v 1.15.4.47 2002/02/27 08:19:41 richter Exp $
+# $Id: eputil.c,v 1.15.4.48 2002/02/27 11:58:24 richter Exp $
#
###################################################################################*/
@@ -1560,9 +1560,10 @@
for (i = skip ; i <= AvFILL (pPathAV); i++)
{
fn = ep_pstrcat(r -> pPool, SvPV(*av_fetch (pPathAV, i, 0), l),
PATH_SEPARATOR_STR, sFilename, NULL) ;
+ /* lprintf (r -> pApp, "i=%d skip=%d, dir=%s, fn=%s\n", i, skip,
SvPV(*av_fetch (pPathAV, i, 0), l), fn) ; */
if (stat (fn, &st) == 0)
{
- r -> Component.nPathNdx = skip ;
+ r -> Component.nPathNdx = i ;
return embperl_File2Abs (r, pPool, fn) ;
}
}
1.70.4.117 +5 -6 embperl/test.pl
Index: test.pl
===================================================================
RCS file: /home/cvs/embperl/test.pl,v
retrieving revision 1.70.4.116
retrieving revision 1.70.4.117
diff -u -r1.70.4.116 -r1.70.4.117
--- test.pl 27 Feb 2002 08:19:41 -0000 1.70.4.116
+++ test.pl 27 Feb 2002 11:58:24 -0000 1.70.4.117
@@ -11,7 +11,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: test.pl,v 1.70.4.116 2002/02/27 08:19:41 richter Exp $
+# $Id: test.pl,v 1.70.4.117 2002/02/27 11:58:24 richter Exp $
#
###################################################################################
@@ -341,12 +341,12 @@
'version' => 2,
},
'exit.htm' => {
- 'version' => 1,
+ #'version' => 1,
'offline' => 0,
'cgi' => 0,
},
'exit2.htm' => {
- 'version' => 1,
+ #'version' => 1,
'offline' => 0,
},
'exit3.htm' => {
@@ -1302,7 +1302,6 @@
$sendcookie = $cookie ;
}
-
$request = new HTTP::Request($content?'POST':'GET', $url);
if ($cookieaction =~ /cookie=(.*?)$/)
{
@@ -1776,7 +1775,7 @@
foreach (keys %ENV)
{
- delete $ENV{$_} if (/^EMBPERL_/) ;
+ delete $ENV{$_} if ((/^EMBPERL_/) && $_ ne 'EMBPERL_LOG' && $_ ne
'EMBPERL_DEBUG') ;
}
delete $ENV{PATH_TRANSLATED} ;
@@ -2038,7 +2037,7 @@
{
print "\nTesting Ouput Caching...\n\n" ;
- Embperl::Init ($logfile, $defaultdebug) ;
+ #Embperl::Init ($logfile, $defaultdebug) ;
my $src = '* [+ $param[0] +] *' ;
my $cmp = '"* $p *"' ;
No revision
No revision
1.1.2.10 +2 -40 embperl/Embperl/Attic/Object.pm
Index: Object.pm
===================================================================
RCS file: /home/cvs/embperl/Embperl/Attic/Object.pm,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -r1.1.2.9 -r1.1.2.10
--- Object.pm 25 Feb 2002 14:57:47 -0000 1.1.2.9
+++ Object.pm 27 Feb 2002 11:58:25 -0000 1.1.2.10
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: Object.pm,v 1.1.2.9 2002/02/25 14:57:47 richter Exp $
+# $Id: Object.pm,v 1.1.2.10 2002/02/27 11:58:25 richter Exp $
#
###################################################################################
@@ -94,53 +94,15 @@
return $path ;
}
-##########################################################################################
-
-sub ScanEnvironment
-
- {
- my ($req, $req_rec) = @_ ;
-
- #Embperl::ScanEnvironment ($req, $req_rec) ;
-
- $req -> {object_base} = $ENV{EMBPERL_OBJECT_BASE} || '_base.html' ;
- $req -> {object_app} = $ENV{EMBPERL_OBJECT_APP} if (exists
($ENV{EMBPERL_OBJECT_APP})) ;
- $req -> {object_addpath} = [split (/;/, $ENV{EMBPERL_OBJECT_ADDPATH})]
if (exists ($ENV{EMBPERL_OBJECT_ADDPATH})) ;
- $req -> {object_stopdir} = $ENV{EMBPERL_OBJECT_STOPDIR} if (exists
($ENV{EMBPERL_OBJECT_STOPDIR})) ;
- $req -> {object_fallback} = $ENV{EMBPERL_OBJECT_FALLBACK} if (exists
($ENV{EMBPERL_OBJECT_FALLBACK})) ;
- $req -> {object_handler_class} = $ENV{EMBPERL_OBJECT_HANDLER_CLASS} if (exists
($ENV{EMBPERL_OBJECT_HANDLER_CLASS})) ;
- $req -> {debug} = 0x7fffffff ;
- }
-
#############################################################################
sub handler
{
my $r = shift ;
- #my $filename = $r -> filename ;
- #my $mod ;
- #if ($filename =~ /^(.*)__(.*?)$/)
- # {
- # $filename = $1 ;
- # $mod = $2 ;
- # $mod =~ s/[^a-zA-Z0-9]/_/g ;
- # }
- #else
- # {
- # $mod = '' ;
- # }
- #
my %req ;
- #ScanEnvironment (\%req, $r) ;
-
- #$req{'inputfile'} = $filename ;
- #$req{'object_base_modifier'} = $mod ;
- #$req{'uri'} = $r -> Apache::uri ;
- #$req{'cleanup'} = -1 if (($req{'options'} &
Embperl::Constant::optDisableVarCleanup)) ;
- #$req{'options'} |= Embperl::Constant::optSendHttpHeader ;
$req{'req_rec'} = $r ;
Execute (\%req) ;
@@ -166,7 +128,7 @@
my $apr ;
$apr = $req -> {req_rec} if ($req -> {req_rec}) ;
- my $basename = $appcfg -> object_base ;
+ my $basename = $appcfg -> object_base or die "Need object_base, please set
EMBPERL_OBJECT_BASE" ;
##$basename =~ s/%modifier%/$req->{object_base_modifier}/ ;
my $addpath = $appcfg -> object_addpath ;
my $directory ;
No revision
No revision
1.3.6.3 +5 -5 embperl/test/cmp/Execute.htm
Index: Execute.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp/Execute.htm,v
retrieving revision 1.3.6.2
retrieving revision 1.3.6.3
diff -u -r1.3.6.2 -r1.3.6.3
--- Execute.htm 6 Feb 2002 09:21:08 -0000 1.3.6.2
+++ Execute.htm 27 Feb 2002 11:58:25 -0000 1.3.6.3
@@ -69,11 +69,11 @@
apear at the second include:
<P>
-$a = (this is the value in $a) <BR>
-$b = (this is the value in $a) äöü <BR>
-$c = 57 <BR>
-$d = 1 <BR>
-$e = 2 <BR>
+$a = <BR>
+$b = <BR>
+$c = <BR>
+$d = <BR>
+$e = <BR>
First of all assign a value:
1.1.2.2 +2 -2 embperl/test/cmp/getsdaturlsess.htm
Index: getsdaturlsess.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp/getsdaturlsess.htm,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- getsdaturlsess.htm 17 Sep 2001 08:49:59 -0000 1.1.2.1
+++ getsdaturlsess.htm 27 Feb 2002 11:58:25 -0000 1.1.2.2
@@ -22,8 +22,8 @@
^ <a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]+\">continue</a>
^ <a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]+\">continue</a>
^ <a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]+\">continue</a>
- <form action="cont.htm">
-^ <input type=\"hidden\" name=\"EMBPERL_UID\" value=\"[a-f0-9]+\"></form>
+^ <form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\"
value=\"[a-f0-9]+\">
+ </form>
</body>
</html>
1.1.2.2 +4 -4 embperl/test/cmp/geturlsess.htm
Index: geturlsess.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp/geturlsess.htm,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- geturlsess.htm 17 Sep 2001 08:49:59 -0000 1.1.2.1
+++ geturlsess.htm 27 Feb 2002 11:58:25 -0000 1.1.2.2
@@ -22,8 +22,8 @@
ok (num=1)<p>
- $mdat{cnt} = -- <br>
- $udat{cnt} = -- <br>
+^ \$mdat\{cnt\} = -\d- <br>
+ $udat{cnt} = -- <br>
sessions:
@@ -32,8 +32,8 @@
^ <a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
^ <a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
^ <a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
- <form action="cont.htm">
-^ <input type=\"hidden\" name=\"EMBPERL_UID\"
value=\"[a-f0-9]*?:[a-f0-9]+\"></form>
+^ <form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\"
value=\"[a-f0-9]*?:[a-f0-9]+\">
+ </form>
</body>
</html>
1.1.2.2 +2 -2 embperl/test/cmp/setsdaturlsess.htm
Index: setsdaturlsess.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp/setsdaturlsess.htm,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- setsdaturlsess.htm 17 Sep 2001 08:49:59 -0000 1.1.2.1
+++ setsdaturlsess.htm 27 Feb 2002 11:58:25 -0000 1.1.2.2
@@ -22,8 +22,8 @@
^ <a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]+\">continue</a>
^ <a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]+\">continue</a>
^ <a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]+\">continue</a>
- <form action="cont.htm">
-^ <input type=\"hidden\" name=\"EMBPERL_UID\" value=\"[a-f0-9]+\"></form>
+^ <form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\"
value=\"[a-f0-9]+\">
+ </form>
</body>
</html>
No revision
No revision
1.24.4.42 +0 -3 embperl/test/conf/httpd.conf.src
Index: httpd.conf.src
===================================================================
RCS file: /home/cvs/embperl/test/conf/httpd.conf.src,v
retrieving revision 1.24.4.41
retrieving revision 1.24.4.42
diff -u -r1.24.4.41 -r1.24.4.42
--- httpd.conf.src 27 Feb 2002 08:19:43 -0000 1.24.4.41
+++ httpd.conf.src 27 Feb 2002 11:58:25 -0000 1.24.4.42
@@ -639,7 +639,6 @@
SetHandler perl-script
PerlHandler Embperl
Options ExecCGI
-PerlSetEnv EMBPERL_APPNAME sidurl
PerlSetEnv EMBPERL_SESSION_MODE 0x20
</Location>
@@ -649,7 +648,6 @@
SetHandler perl-script
PerlHandler Embperl
Options ExecCGI
-PerlSetEnv EMBPERL_APPNAME uidurl
PerlSetEnv EMBPERL_SESSION_MODE 0x02
</Location>
@@ -659,7 +657,6 @@
SetHandler perl-script
PerlHandler Embperl
Options ExecCGI
-PerlSetEnv EMBPERL_APPNAME sidurl
PerlSetEnv EMBPERL_SESSION_MODE 0x22
</Location>
No revision
No revision
1.2.6.1 +2 -0 embperl/test/html/exit.htm
Index: exit.htm
===================================================================
RCS file: /home/cvs/embperl/test/html/exit.htm,v
retrieving revision 1.2
retrieving revision 1.2.6.1
diff -u -r1.2 -r1.2.6.1
--- exit.htm 5 Oct 1999 06:03:41 -0000 1.2
+++ exit.htm 27 Feb 2002 11:58:26 -0000 1.2.6.1
@@ -12,4 +12,6 @@
After Exit
+[+ "perl after exit" +]
+
</body>
No revision
No revision
1.2.6.4 +6 -3 embperl/test/html/registry/tied.htm
Index: tied.htm
===================================================================
RCS file: /home/cvs/embperl/test/html/registry/tied.htm,v
retrieving revision 1.2.6.3
retrieving revision 1.2.6.4
diff -u -r1.2.6.3 -r1.2.6.4
--- tied.htm 6 Feb 2002 09:21:08 -0000 1.2.6.3
+++ tied.htm 27 Feb 2002 11:58:26 -0000 1.2.6.4
@@ -51,7 +51,8 @@
$rc = Embperl::Execute ({inputfile => 'test_numeric',
input => 5,
- mtime => 1}) ;
+ mtime => 1,
+ options =>
Embperl::Constant::optReturnError}) ;
print "rc = $rc\n" ;
@@ -60,7 +61,8 @@
$rc = Embperl::Execute ({inputfile => 'test_string',
input => 'Hi',
- mtime => 1}) ;
+ mtime => 1,
+ options =>
Embperl::Constant::optReturnError}) ;
print "rc = $rc\n" ;
@@ -94,7 +96,8 @@
$rc = Embperl::Execute ({inputfile => 'test_tied_string',
input => $tiedvar1,
- mtime => 1}) ;
+ mtime => 1,
+ options =>
Embperl::Constant::optReturnError}) ;
print "rc = $rc\n" ;
No revision
No revision
1.1.2.21 +1 -1 embperl/xsbuilder/maps/Attic/ep_structure.map
Index: ep_structure.map
===================================================================
RCS file: /home/cvs/embperl/xsbuilder/maps/Attic/ep_structure.map,v
retrieving revision 1.1.2.20
retrieving revision 1.1.2.21
diff -u -r1.1.2.20 -r1.1.2.21
--- ep_structure.map 27 Feb 2002 08:19:44 -0000 1.1.2.20
+++ ep_structure.map 27 Feb 2002 11:58:26 -0000 1.1.2.21
@@ -90,7 +90,6 @@
sCookieDomain | cookie_domain
sCookiePath | cookie_path
sCookieExpires | cookie_expires
- nSessionMode | session_mode
sLog | log
bDebug | debug
sMailhost | mailhost
@@ -218,6 +217,7 @@
pPathAV | path
bDebug | debug
bOptions | options
+ nSessionMode | session_mode
new
! private
</tReqConfig>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]