I know you said SESSION.SESSIONID will replace cftoken as well, but what about the instance where we are checking and setting both cfid and cftoken. Example below:
Code:
<!--- Define the local scope. --->
<cfset var LOCAL = {} />
<!---
Store the CF id and token. We are about to clear the
session scope for intialization and want to make sure
we don't lose our auto-generated tokens.
--->
<cfset LOCAL.CFID = SESSION.CFID />
<cfset LOCAL.CFTOKEN = SESSION.CFTOKEN />
<!--- Clear the session. --->
<cfset StructClear( SESSION ) />
<!---
Replace the id and token so that the ColdFusion
application knows who we are.
--->
<cfset SESSION.CFID = LOCAL.CFID />
<cfset SESSION.CFTOKEN = LOCAL.CFTOKEN />