Index: openacs-4/packages/contacts/www/convert.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/www/convert.tcl,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/contacts/www/convert.tcl	13 Dec 2006 12:50:17 -0000	1.1
+++ openacs-4/packages/contacts/www/convert.tcl	26 Nov 2024 09:23:38 -0000	1.2
@@ -7,7 +7,7 @@
 } 
 
 set page [lindex [ad_httpget -url "$url"] 1]
-set oo_file [ns_tmpnam]
+set oo_file [ns_mktemp]
 set file [open "$oo_file" w]
 puts $file $page
 flush $file
@@ -86,5 +86,5 @@
 
 ns_returnfile 200 $mime_type $pdf_filename
 
-ns_unlink $oo_file
-ns_unlink $pdf_filename
\ No newline at end of file
+file delete $oo_file
+file delete $pdf_filename
\ No newline at end of file
Index: openacs-4/packages/contacts/www/import-csv-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/www/import-csv-2.tcl,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/contacts/www/import-csv-2.tcl	12 Aug 2018 12:33:06 -0000	1.2
+++ openacs-4/packages/contacts/www/import-csv-2.tcl	26 Nov 2024 09:23:38 -0000	1.3
@@ -34,8 +34,8 @@
 }
 
 # Get the CSV File
-set new_file_path [ns_tmpnam] 
-ns_cp $file_path $new_file_path
+set new_file_path [ns_mktemp] 
+file copy $file_path $new_file_path
 set csv_stream [open $file_path r]
 fconfigure $csv_stream -encoding utf-8
 ns_getcsv $csv_stream headers
Index: openacs-4/packages/directory/tcl/directory-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/directory/tcl/directory-procs.tcl,v
diff -u -r1.7 -r1.8
--- openacs-4/packages/directory/tcl/directory-procs.tcl	22 Oct 2018 08:32:17 -0000	1.7
+++ openacs-4/packages/directory/tcl/directory-procs.tcl	26 Nov 2024 09:23:38 -0000	1.8
@@ -130,7 +130,7 @@
     return [list $subsite_id $subsite_name]
 }
 
-set tcllib [expr {[info exists ::acs::tcllib] ? $::acs::tcllib : [ns_info tcllib]}]
+set tcllib [expr {[info exists ::acs::tcllib] ? $::acs::tcllib : [ns_server tcllib]}]
 set mods_file $tcllib/directory-mods.tcl
     
 if [file exists $mods_file] {
Index: openacs-4/packages/dotlrn-ecommerce/tcl/dotlrn-ecommerce-init.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/tcl/dotlrn-ecommerce-init.tcl,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/dotlrn-ecommerce/tcl/dotlrn-ecommerce-init.tcl	24 Sep 2005 08:16:14 -0000	1.6
+++ openacs-4/packages/dotlrn-ecommerce/tcl/dotlrn-ecommerce-init.tcl	26 Nov 2024 09:23:38 -0000	1.7
@@ -25,4 +25,4 @@
     dotlrn_ecommerce::disallow_access_to_approved_users
 }
 
-ns_register_adptag "deparam" "/deparam" dotlrn_ecommerce::util::param
\ No newline at end of file
+ns_adp_registerscript "deparam" "/deparam" dotlrn_ecommerce::util::param
\ No newline at end of file
Index: openacs-4/packages/dynamic-types/tcl/form-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dynamic-types/tcl/form-procs.tcl,v
diff -u -r1.21 -r1.22
--- openacs-4/packages/dynamic-types/tcl/form-procs.tcl	12 Feb 2019 18:45:14 -0000	1.21
+++ openacs-4/packages/dynamic-types/tcl/form-procs.tcl	26 Nov 2024 09:23:38 -0000	1.22
@@ -470,7 +470,7 @@
                     -file $tmp_file \
                     -storage_type $cr_storage
 
-                ns_unlink $tmp_file
+                file delete $tmp_file
             }
         }
     } else {
@@ -759,7 +759,7 @@
     Write a temporary file in utf-8 character encoding containing the text
     supplied.
 } {
-    set tmp_file [ns_tmpnam]
+    set tmp_file [ns_mktemp]
 
     set fd [open $tmp_file w]
     fconfigure $fd -encoding utf-8
Index: openacs-4/packages/ecommerce/tcl/ecds-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/tcl/ecds-procs.tcl,v
diff -u -r1.16 -r1.17
--- openacs-4/packages/ecommerce/tcl/ecds-procs.tcl	17 Apr 2018 14:47:02 -0000	1.16
+++ openacs-4/packages/ecommerce/tcl/ecds-procs.tcl	26 Nov 2024 09:23:38 -0000	1.17
@@ -186,7 +186,7 @@
                 #put page into file cache
                 set base_url [string range $url 7 end]
                 set filepathname [file join [acs_root_dir] $url_cache_dir $base_url]
-                # if ec_assert_directory doesnot work here, try replacing ns_mkdir with 'file mkdir' or
+                # if ec_assert_directory doesnot work here, try replacing file mkdir with 'file mkdir' or
                 # make the ec_asser_directory recursive
                 set filepath [file dirname $filepathname]
                 ec_assert_directory $filepath
Index: openacs-4/packages/ecommerce/tcl/ecommerce-email-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/tcl/ecommerce-email-procs.tcl,v
diff -u -r1.13 -r1.14
--- openacs-4/packages/ecommerce/tcl/ecommerce-email-procs.tcl	17 Dec 2008 06:39:58 -0000	1.13
+++ openacs-4/packages/ecommerce/tcl/ecommerce-email-procs.tcl	26 Nov 2024 09:23:38 -0000	1.14
@@ -31,7 +31,7 @@
     procedure does send the email to the Cc'd email addresses.
 } {
 
-    set extra_headers [ns_set new]
+    set extra_headers [ns_set create]
     ns_set put $extra_headers "Reply-to" $reply_to
     
     if { $bcc != "" } {
Index: openacs-4/packages/ecommerce/www/admin/customer-service/email-send-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/admin/customer-service/email-send-2.tcl,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/ecommerce/www/admin/customer-service/email-send-2.tcl	18 Aug 2008 11:02:23 -0000	1.6
+++ openacs-4/packages/ecommerce/www/admin/customer-service/email-send-2.tcl	26 Nov 2024 09:23:38 -0000	1.7
@@ -81,7 +81,7 @@
 
 }
 
-set extra_headers [ns_set new]
+set extra_headers [ns_set create]
 if { [info exists cc_to] && $cc_to != "" } {
     ns_set put $extra_headers "Cc" "$cc_to"
     ec_sendmail_from_service $email_to_use [ad_parameter -package_id [ec_id] CustomerServiceEmailAddress ecommerce] $subject $message $extra_headers $bcc_to
Index: openacs-4/packages/ecommerce/www/admin/products/supporting-file-delete-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/admin/products/supporting-file-delete-2.tcl,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/ecommerce/www/admin/products/supporting-file-delete-2.tcl	10 Sep 2002 22:22:45 -0000	1.2
+++ openacs-4/packages/ecommerce/www/admin/products/supporting-file-delete-2.tcl	26 Nov 2024 09:23:38 -0000	1.3
@@ -24,6 +24,6 @@
 
 set full_dirname "[ec_data_directory][ec_product_directory]$subdirectory/$dirname"
 
-ns_unlink $full_dirname/$file
+file delete $full_dirname/$file
 
 ad_returnredirect "supporting-files-upload.tcl?[export_url_vars product_id]"
Index: openacs-4/packages/ecommerce/www/admin/products/supporting-files-upload-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/admin/products/supporting-files-upload-2.tcl,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/ecommerce/www/admin/products/supporting-files-upload-2.tcl	25 Aug 2008 19:36:03 -0000	1.3
+++ openacs-4/packages/ecommerce/www/admin/products/supporting-files-upload-2.tcl	26 Nov 2024 09:23:38 -0000	1.4
@@ -37,6 +37,6 @@
     
 set perm_filename "$full_dirname/$client_filename"
 
-ns_cp $tmp_filename $perm_filename
+file copy $tmp_filename $perm_filename
 
 ad_returnredirect "supporting-files-upload.tcl?[export_url_vars product_id]"
Index: openacs-4/packages/ecommerce/www/admin/tools/spell.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/admin/tools/spell.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/ecommerce/www/admin/tools/spell.tcl	9 May 2018 15:33:31 -0000	1.4
+++ openacs-4/packages/ecommerce/www/admin/tools/spell.tcl	26 Nov 2024 09:23:38 -0000	1.5
@@ -76,12 +76,12 @@
     
     set lines [split $text "\n"]
     
-    set dictionaryfile [ns_normalizepath "[ns_info pageroot]/../packages/ecommerce/www/admin/tools/ispell-words"]
+    set dictionaryfile [ns_normalizepath "[ns_server pagedir]/../packages/ecommerce/www/admin/tools/ispell-words"]
 
     # The webspell wrapper is necessary because ispell requires
     # the HOME environment set, and setting env(HOME) doesn't appear
     # to work from AOLserver.
-    set spelling_program [ns_normalizepath "[ns_info pageroot]/../packages/ecommerce/www/admin/tools/webspell"]
+    set spelling_program [ns_normalizepath "[ns_server pagedir]/../packages/ecommerce/www/admin/tools/webspell"]
 
     set ispell_proc [open "|$spelling_program $tmpfile $dictionaryfile" r]
 
@@ -95,7 +95,7 @@
 	ns_log Notice "spell.tcl had a problem: $errmsg"
     }
     close $ispell_proc
-    ns_unlink $tmpfile
+    file delete $tmpfile
 
     if { $try == $max_retry } {
 	doc_return 200 text/html "[ad_header "Spell Checker Error"]
Index: openacs-4/packages/ecommerce/www/admin/tools/spelling-dictionary-add-to.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/www/admin/tools/spelling-dictionary-add-to.tcl,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/ecommerce/www/admin/tools/spelling-dictionary-add-to.tcl	26 Aug 2001 23:37:59 -0000	1.1
+++ openacs-4/packages/ecommerce/www/admin/tools/spelling-dictionary-add-to.tcl	26 Nov 2024 09:23:38 -0000	1.2
@@ -14,7 +14,7 @@
 # since one chunk is only to be added to the file at a time, it is impossible for the chunks to
 # become interspersed. 
 
-set ispell_file [open "[ns_info pageroot]/tools/ispell-words" a]
+set ispell_file [open "[ns_server pagedir]/tools/ispell-words" a]
 
 # ispell-words will be of the form: one word per line, with a newline at the end (since -nonewline is not specified)
 puts $ispell_file "$errword"
Index: openacs-4/packages/ezic-gateway/tcl/ezic-gateway-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ezic-gateway/tcl/ezic-gateway-procs.tcl,v
diff -u -r1.5 -r1.6
--- openacs-4/packages/ezic-gateway/tcl/ezic-gateway-procs.tcl	17 Apr 2018 14:47:02 -0000	1.5
+++ openacs-4/packages/ezic-gateway/tcl/ezic-gateway-procs.tcl	26 Nov 2024 09:23:38 -0000	1.6
@@ -91,7 +91,7 @@
 
     # Add the Referer to the headers passed on to EZIC
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with EZIC
@@ -297,7 +297,7 @@
 
     # Add the Referer to the headers passed on to EZIC.com
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     if {[string length $card_number] < 2} {
@@ -453,7 +453,7 @@
 
     # Add the Referer to the headers passed on to EZIC.com
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     if {[string length $card_number] < 2} {
@@ -632,7 +632,7 @@
 
     # Add the Referer to the headers passed on to EZIC gateway
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     if {[string length $card_number] < 2} {
@@ -791,7 +791,7 @@
 
     # Add the Referer to the headers passed on to EZIC gateway
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with EZIC gateway
Index: openacs-4/packages/file-manager/tcl/file-manager-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/file-manager/tcl/file-manager-procs.tcl,v
diff -u -r1.7 -r1.8
--- openacs-4/packages/file-manager/tcl/file-manager-procs.tcl	9 May 2018 15:33:31 -0000	1.7
+++ openacs-4/packages/file-manager/tcl/file-manager-procs.tcl	26 Nov 2024 09:23:38 -0000	1.8
@@ -12,7 +12,7 @@
 proc fm_pageroot_relative_path {path} {
     set match ""
     set local ""
-    regexp "[ns_info pageroot](.+)" $path match local
+    regexp "[ns_server pagedir](.+)" $path match local
     return $local
 }
 
@@ -68,7 +68,7 @@
     # Grab the path relative to the pageroot and create a linked list
     # of path components for the top of the directory listing
 
-    set pageroot [ns_info pageroot]
+    set pageroot [ns_server pagedir]
 
     if [string equal -nocase $pageroot $path_full] {
         # we're at the top of the directory listing already
Index: openacs-4/packages/file-manager/www/file-tree.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/file-manager/www/file-tree.tcl,v
diff -u -r1.5 -r1.6
--- openacs-4/packages/file-manager/www/file-tree.tcl	9 May 2018 15:33:31 -0000	1.5
+++ openacs-4/packages/file-manager/www/file-tree.tcl	26 Nov 2024 09:23:38 -0000	1.6
@@ -65,7 +65,7 @@
   set depth [expr $depth - 1]
 }
 
-set root  [ns_info pageroot]
+set root  [ns_server pagedir]
 set depth 0
 set output "
 <html>
Index: openacs-4/packages/file-manager/www/file-upload-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/file-manager/www/file-upload-2.tcl,v
diff -u -r1.8 -r1.9
--- openacs-4/packages/file-manager/www/file-upload-2.tcl	11 Dec 2003 21:40:03 -0000	1.8
+++ openacs-4/packages/file-manager/www/file-upload-2.tcl	26 Nov 2024 09:23:38 -0000	1.9
@@ -98,7 +98,7 @@
     
 } else {
     # if the file is binary just copy it
-    ns_cp $the_file $path
+    file copy $the_file $path
 }
 
 # Register what we did with the version control system if necessary
Index: openacs-4/packages/glossary/www/glossary-add-edit.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/glossary/www/glossary-add-edit.tcl,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/glossary/www/glossary-add-edit.tcl	28 Mar 2018 17:00:41 -0000	1.6
+++ openacs-4/packages/glossary/www/glossary-add-edit.tcl	26 Nov 2024 09:23:38 -0000	1.7
@@ -27,7 +27,7 @@
 } -properties {  
     context:onevalue
     new_p:onevalue
-    permissions_link:onevalue
+    permissiofile link -hard:onevalue
     live_p:onevalue
     publish_action_link:onevalue
     workflow_link:onevalue
@@ -65,7 +65,7 @@
     
     set new_p 0
     
-    set permissions_link "/permissions/one?object_id=$item_id"
+    set permissiofile link -hard "/permissions/one?object_id=$item_id"
 
     # grab the existing workflow_key and desciption for the glossary
     if ![db_0or1row glossary_workflow_info {
@@ -98,7 +98,7 @@
 
     set new_p 1
 
-    set permissions_link ""
+    set permissiofile link -hard ""
 
     set disable_link ""
 
Index: openacs-4/packages/imsld/tcl/imsld-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/imsld/tcl/imsld-procs.tcl,v
diff -u -r1.130 -r1.131
--- openacs-4/packages/imsld/tcl/imsld-procs.tcl	15 Nov 2019 09:09:58 -0000	1.130
+++ openacs-4/packages/imsld/tcl/imsld-procs.tcl	26 Nov 2024 09:23:38 -0000	1.131
@@ -1133,7 +1133,7 @@
 
     if { ![empty_string_p $email_address] && [util_email_valid_p $email_address] && ([lsearch -exact $notified_users_list $email_address] == -1) } {
         # Use this to build up extra mail headers        
-        set extra_headers [ns_set new]
+        set extra_headers [ns_set create]
         
         # This should disable most auto-replies.
         ns_set put $extra_headers Precedence list
@@ -1183,7 +1183,7 @@
                 append body_html "[_ imsld.lt_br____________________1]"
             }
             # Use this to build up extra mail headers        
-            set extra_headers [ns_set new]
+            set extra_headers [ns_set create]
             
             # This should disable most auto-replies.
             ns_set put $extra_headers Precedence list
Index: openacs-4/packages/imsld/www/admin/imsld-export-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/imsld/www/admin/imsld-export-2.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/imsld/www/admin/imsld-export-2.tcl	5 Apr 2018 14:44:09 -0000	1.4
+++ openacs-4/packages/imsld/www/admin/imsld-export-2.tcl	26 Nov 2024 09:23:38 -0000	1.5
@@ -36,7 +36,7 @@
 }
 
 #Create new temporal directory to store output
-set in_path [ns_tmpnam]
+set in_path [ns_mktemp]
 
 set path [acs_package_root_dir imsld]/www$in_path
 
Index: openacs-4/packages/imsld/www/admin/imsld-export-xo.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/imsld/www/admin/imsld-export-xo.tcl,v
diff -u -r1.5 -r1.6
--- openacs-4/packages/imsld/www/admin/imsld-export-xo.tcl	5 Apr 2018 14:44:09 -0000	1.5
+++ openacs-4/packages/imsld/www/admin/imsld-export-xo.tcl	26 Nov 2024 09:23:38 -0000	1.6
@@ -45,7 +45,7 @@
 }
 
 #Create new temporal directory to store output
-set in_path [ns_tmpnam]
+set in_path [ns_mktemp]
 set path [acs_package_root_dir imsld]/www$in_path
 exec mkdir $path
 
Index: openacs-4/packages/invoices/www/invoice-documents.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/invoices/www/invoice-documents.tcl,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/invoices/www/invoice-documents.tcl	6 Nov 2006 15:40:29 -0000	1.6
+++ openacs-4/packages/invoices/www/invoice-documents.tcl	26 Nov 2024 09:23:38 -0000	1.7
@@ -120,7 +120,7 @@
 
 # delete old files
 foreach one_file $files {
-    ns_unlink $one_file
+    file delete $one_file
 }
 
 if {[multirow size documents] > 0} {
Index: openacs-4/packages/invoices/www/invoice-join.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/invoices/www/invoice-join.tcl,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/invoices/www/invoice-join.tcl	31 May 2013 20:27:17 -0000	1.3
+++ openacs-4/packages/invoices/www/invoice-join.tcl	26 Nov 2024 09:23:38 -0000	1.4
@@ -25,11 +25,11 @@
 db_transaction {
     db_1row last_checkout {}
 
-    set tmpdir [ns_tmpnam]
+    set tmpdir [ns_mktemp]
     file mkdir $tmpdir
     set files {}
     db_foreach pdfs_to_join {} {
-	ns_cp "${root_dir}$content" "${tmpdir}/[file tail $content].pdf"
+	file copy "${root_dir}$content" "${tmpdir}/[file tail $content].pdf"
 	lappend files "${tmpdir}/[file tail $content].pdf"
     }
 
@@ -42,10 +42,10 @@
 
 	# delete old files
 	foreach one_file $files {
-	    ns_unlink $one_file
+	    file delete $one_file
 	}
     }
-    ns_rmdir $tmpdir
+    file delete $tmpdir
 }
 
 set actions [list "[_ invoices.ok]" $return_url "[_ invoices.ok]"]
Index: openacs-4/packages/invoices/www/journal-add.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/invoices/www/journal-add.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/invoices/www/journal-add.tcl	19 Oct 2006 17:06:49 -0000	1.4
+++ openacs-4/packages/invoices/www/journal-add.tcl	26 Nov 2024 09:23:38 -0000	1.5
@@ -223,9 +223,9 @@
 ######
 
 # create tmp-folder for zip
-set tmp_path [ns_tmpnam]
+set tmp_path [ns_mktemp]
 file mkdir $tmp_path
-set zip_path [ns_tmpnam]
+set zip_path [ns_mktemp]
 file mkdir $zip_path
 set zip_file_id [db_nextval acs_object_id_seq]
 set item_name "journal_${today}.zip"
Index: openacs-4/packages/invoices/www/offer-ae.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/invoices/www/offer-ae.tcl,v
diff -u -r1.44 -r1.45
--- openacs-4/packages/invoices/www/offer-ae.tcl	25 Jan 2024 12:25:52 -0000	1.44
+++ openacs-4/packages/invoices/www/offer-ae.tcl	26 Nov 2024 09:23:38 -0000	1.45
@@ -888,9 +888,9 @@
 
 	    set path "[cr_fs_path][cr_create_content_file_path $file_id ""]"
 	    foreach revision [glob -directory $path "*"] {
-		ns_unlink $revision
+		file delete $revision
 	    }
-	    ns_rmdir $path
+	    file delete $path
 	}
     }
 
Index: openacs-4/packages/lors-central/tcl/lors-central-export-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/lors-central/tcl/lors-central-export-procs.tcl,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/lors-central/tcl/lors-central-export-procs.tcl	17 May 2005 16:21:18 -0000	1.1
+++ openacs-4/packages/lors-central/tcl/lors-central-export-procs.tcl	26 Nov 2024 09:23:38 -0000	1.2
@@ -48,7 +48,7 @@
     {-file_name ""}
 } {
     if {[empty_string_p $path]} {
-	set path [ns_tmpnam]
+	set path [ns_mktemp]
    }
     db_1row select_object_info {             
 	select fs_objects.*
@@ -79,7 +79,7 @@
     publish the contents of a file storage folder to the file system
 } {
     if {[empty_string_p $path]} {
-	set path [ns_tmpnam]
+	set path [ns_mktemp]
     }
 
     if {[empty_string_p $folder_name]} {
@@ -110,7 +110,7 @@
     (which at least KDE also knows how to handle)
 } {
     if {[empty_string_p $path]} {
-	set path [ns_tmpnam]
+	set path [ns_mktemp]
 	file mkdir $path
     }
 
@@ -138,7 +138,7 @@
     publish an object to the file system
 } {
     if {[empty_string_p $path]} {
-	set path [ns_tmpnam]
+	set path [ns_mktemp]
 	file mkdir $path
     }
 
Index: openacs-4/packages/lors-central/www/export/create-zip.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/lors-central/www/export/create-zip.tcl,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/lors-central/www/export/create-zip.tcl	17 May 2005 16:21:20 -0000	1.1
+++ openacs-4/packages/lors-central/www/export/create-zip.tcl	26 Nov 2024 09:23:38 -0000	1.2
@@ -141,7 +141,7 @@
 
 
 # publish the object to the file system
-set in_path [ns_tmpnam]
+set in_path [ns_mktemp]
 exec mkdir $in_path
 
 set file [lors_central::export::publish_object_to_file_system -object_id $content_folder_id -path $in_path -user_id $user_id]
@@ -157,7 +157,7 @@
 # - - - - - - - - - - - - - - - - - - - - 
 # Create a temp dir to put the archive in
 # - - - - - - - - - - - - - - - - - - - - 
-set out_path [ns_tmpnam]
+set out_path [ns_mktemp]
 file mkdir $out_path
 set out_file [file join ${out_path} ${download_name}]
 
Index: openacs-4/packages/lorsm/www/delivery/servlet.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/lorsm/www/delivery/servlet.tcl,v
diff -u -r1.16 -r1.17
--- openacs-4/packages/lorsm/www/delivery/servlet.tcl	15 Nov 2019 08:45:10 -0000	1.16
+++ openacs-4/packages/lorsm/www/delivery/servlet.tcl	26 Nov 2024 09:23:38 -0000	1.17
@@ -25,7 +25,7 @@
 #see index.tcl for setting java/javascript debugging by setting debuglevel
 
 #try to circumvent browsers caching strategies
-set s [ns_set new]
+set s [ns_set create]
 ns_set put $s "Pragma" "No-Cache"
 ns_set put $s "Expires" "0"
 ns_set move $s [ns_conn outputheaders]
Index: openacs-4/packages/lorsm/www/delivery-scorm/servlet.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/lorsm/www/delivery-scorm/servlet.tcl,v
diff -u -r1.8 -r1.9
--- openacs-4/packages/lorsm/www/delivery-scorm/servlet.tcl	15 Nov 2019 08:45:10 -0000	1.8
+++ openacs-4/packages/lorsm/www/delivery-scorm/servlet.tcl	26 Nov 2024 09:23:38 -0000	1.9
@@ -17,7 +17,7 @@
 set level "Debug"
 
 #try to circumvent browsers caching strategies
-set s [ns_set new]
+set s [ns_set create]
 ns_set put $s "Pragma" "No-Cache"
 ns_set put $s "Expires" "0"
 ns_set move $s [ns_conn outputheaders]
Index: openacs-4/packages/monitoring/tcl/stats-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/monitoring/tcl/stats-procs.tcl,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/monitoring/tcl/stats-procs.tcl	4 Apr 2018 18:51:56 -0000	1.2
+++ openacs-4/packages/monitoring/tcl/stats-procs.tcl	26 Nov 2024 09:23:38 -0000	1.3
@@ -317,14 +317,14 @@
         Uptime [monitoring::fmtSeconds [ns_info uptime]] \
         Process "[ns_info pid] [ns_info nsd]" \
         Configuration [ns_info config] \
-        "Page Root" [ns_info pageroot] \
-        "Tcl Library" [ns_info tcllib] \
+        "Page Root" [ns_server pagedir] \
+        "Tcl Library" [ns_server tcllib] \
         Log [ns_info log] \
         Version "[ns_info version] ([ns_info label])" \
         "Build Date" [ns_info builddate] \
         Servers [join [ns_info servers] <br>] \
         Threads [join [ns_server threads] <br>] \
-        "Keep Alive" [ns_server keepalive] \
+        "Keep Alive" [ns_conn keepalived] \
         Callbacks [join [ns_info callbacks] <br>] \
         "Socket Callbacks" [join [ns_info sockcallbacks] <br>] \
         Active [join [ns_server active] <br>]]
Index: openacs-4/packages/monitoring/www/monitor.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/monitoring/www/monitor.tcl,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/monitoring/www/monitor.tcl	26 Feb 2005 17:52:22 -0000	1.3
+++ openacs-4/packages/monitoring/www/monitor.tcl	26 Nov 2024 09:23:38 -0000	1.4
@@ -13,7 +13,7 @@
 # let's build an ns_set just to figure out how many distinct elts; kind of a kludge
 # but I don't see how it would be faster in raw Tcl
 
-set scratch [ns_set new scratch]
+set scratch [ns_set create scratch]
 foreach connection $connections {
     ns_set cput $scratch [lindex $connection 1] 1
 }
Index: openacs-4/packages/package-builder/www/package-code-generate.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/package-builder/www/package-code-generate.tcl,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/package-builder/www/package-code-generate.tcl	31 May 2013 20:27:17 -0000	1.2
+++ openacs-4/packages/package-builder/www/package-code-generate.tcl	26 Nov 2024 09:23:38 -0000	1.3
@@ -20,7 +20,7 @@
 
 set types [db_list types {}]
 
-# ns_rmdir $pkg(path)
+# file delete $pkg(path)
 file mkdir $pkg(path)
 file mkdir "$pkg(path)/tcl"
 file mkdir "$pkg(path)/www"
Index: openacs-4/packages/project-manager/tcl/project-manager-callback-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/project-manager/tcl/project-manager-callback-procs.tcl,v
diff -u -r1.19 -r1.20
--- openacs-4/packages/project-manager/tcl/project-manager-callback-procs.tcl	30 Nov 2018 11:37:38 -0000	1.19
+++ openacs-4/packages/project-manager/tcl/project-manager-callback-procs.tcl	26 Nov 2024 09:23:38 -0000	1.20
@@ -267,7 +267,7 @@
 	foreach file $email(files) {
 	    set file_title [lindex $file 2]
 	    set mime_type [lindex $file 0]
-	    set file_path [ns_tmpnam]
+	    set file_path [ns_mktemp]
 	    set f [open $file_path w+]
             fconfigure $f -translation binary
             puts -nonewline $f [lindex $file 3]
Index: openacs-4/packages/project-manager/tcl/project-manager-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/project-manager/tcl/project-manager-procs.tcl,v
diff -u -r1.20 -r1.21
--- openacs-4/packages/project-manager/tcl/project-manager-procs.tcl	2 Aug 2007 11:35:19 -0000	1.20
+++ openacs-4/packages/project-manager/tcl/project-manager-procs.tcl	26 Nov 2024 09:23:38 -0000	1.21
@@ -229,8 +229,8 @@
 		set new [$filter_proc $new]
 	}
 
-	set old_f [ns_tmpnam]
-	set new_f [ns_tmpnam]
+	set old_f [ns_mktemp]
+	set new_f [ns_mktemp]
 	set old_fd [open $old_f "w"]
 	set new_fd [open $new_f "w"]
 	puts $old_fd [join [split $old $split_by] "\n"]
Index: openacs-4/packages/schema-browser/tcl/schema-browser-procs-oracle.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/schema-browser/tcl/schema-browser-procs-oracle.tcl,v
diff -u -r1.11 -r1.12
--- openacs-4/packages/schema-browser/tcl/schema-browser-procs-oracle.tcl	17 Mar 2023 16:47:25 -0000	1.11
+++ openacs-4/packages/schema-browser/tcl/schema-browser-procs-oracle.tcl	26 Nov 2024 09:23:38 -0000	1.12
@@ -263,7 +263,7 @@
 
 
     # current_constraint_info -- a constraint_info_set for the constraint being processed in the loop below
-    set constraint_info [ns_set new]
+    set constraint_info [ns_set create]
 
     db_foreach schema_browser_index_get_subselect "
     select  columns.constraint_name,
@@ -311,7 +311,7 @@
 		    set column_list [add_column_constraint $column_list $constraint_info]
 		}
 	    }
-	    set constraint_info [ns_set new]
+	    set constraint_info [ns_set create]
 	    ns_set put $constraint_info "constraint_name" $constraint_name
 	    ns_set put $constraint_info "constraint_type" $constraint_type
 	    ns_set put $constraint_info "constraint_columns" [list $column_name]
Index: openacs-4/packages/soap-gateway/www/action.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/soap-gateway/www/action.tcl,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/soap-gateway/www/action.tcl	17 Oct 2004 05:51:55 -0000	1.1
+++ openacs-4/packages/soap-gateway/www/action.tcl	26 Nov 2024 09:23:38 -0000	1.2
@@ -3,7 +3,7 @@
 # page contract not included due to cost of parsing payload - (not necessary)
 
 # generate temp file name
-set tmp [ns_tmpnam]
+set tmp [ns_mktemp]
 
 # open it
 set f [open $tmp w+]
@@ -13,7 +13,7 @@
 set err [catch {
 	
 	# dump payload to file - there's gotta be a better way to get the content
-	ns_conncptofp $f
+	ns_conn copy 0 [ns_conn contentlength] $f
 	
 	# get file size
 	set size [tell $f]
@@ -58,7 +58,7 @@
 	catch { close $f }
 	
 	# unlink file
-	ns_unlink $tmp
+	file delete $tmp
 
 	# throw
 	error "$msg\nfile: $tmp" $savedInfo
@@ -69,7 +69,7 @@
 	catch { close $f }
 
 	# unlink file
-	ns_unlink $tmp
+	file delete $tmp
 
 
 }
Index: openacs-4/packages/webmail/tcl/webmail-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/webmail/tcl/webmail-procs.tcl,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/webmail/tcl/webmail-procs.tcl	5 Apr 2018 14:44:09 -0000	1.3
+++ openacs-4/packages/webmail/tcl/webmail-procs.tcl	26 Nov 2024 09:23:38 -0000	1.4
@@ -122,7 +122,7 @@
 	    webmail.delete_user(:user_id); 
 	    end;
 	}
-	ns_unlink $file_string
+	file delete $file_string
     } {
 	return $errmsg
     }
Index: openacs-4/packages/webmail-system/tcl/webmail-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/webmail-system/tcl/webmail-procs.tcl,v
diff -u -r1.7 -r1.8
--- openacs-4/packages/webmail-system/tcl/webmail-procs.tcl	9 May 2018 15:33:33 -0000	1.7
+++ openacs-4/packages/webmail-system/tcl/webmail-procs.tcl	26 Nov 2024 09:23:38 -0000	1.8
@@ -455,7 +455,7 @@
 	Creates the header depending on the content_type
     } {
 
-	set header [ns_set new]
+	set header [ns_set create]
 	ns_set put $header "MIME-Version" "1.0"
 	ns_set update $header "X-Mailer" "OpenACS 5.1"
 
Index: openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file-flash.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file-flash.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file-flash.tcl	5 Apr 2018 14:44:08 -0000	1.4
+++ openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file-flash.tcl	26 Nov 2024 09:23:37 -0000	1.5
@@ -57,7 +57,7 @@
 
 if { $unpack_p && ![empty_string_p $unzip_binary] && [file extension $Filedata] eq ".zip"  } {
     
-    set path [ns_tmpnam]
+    set path [ns_mktemp]
     file mkdir $path
 
     
Index: openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file.tcl,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file.tcl	5 Apr 2018 14:44:08 -0000	1.3
+++ openacs-4/packages/ajax-filestorage-ui/www/xmlhttp/add-file.tcl	26 Nov 2024 09:23:37 -0000	1.4
@@ -55,7 +55,7 @@
 
 if { $unpack_p && ![empty_string_p $unzip_binary] && [file extension [template::util::file::get_property filename $upload_file]] eq ".zip"  } {
     
-    set path [ns_tmpnam]
+    set path [ns_mktemp]
     file mkdir $path
 
     
Index: openacs-4/packages/authorize-gateway/tcl/authorize-gateway-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/authorize-gateway/tcl/authorize-gateway-procs.tcl,v
diff -u -r1.11 -r1.12
--- openacs-4/packages/authorize-gateway/tcl/authorize-gateway-procs.tcl	3 Apr 2018 21:30:47 -0000	1.11
+++ openacs-4/packages/authorize-gateway/tcl/authorize-gateway-procs.tcl	26 Nov 2024 09:23:37 -0000	1.12
@@ -41,7 +41,7 @@
 
     # Add the Referer to the headers passed on to Authorize.net
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with Authorize.net
@@ -228,7 +228,7 @@
 
     # Add the Referer to the headers passed on to Authorize.net
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with Authorize.net
@@ -349,7 +349,7 @@
 
     # Add the Referer to the headers passed on to Authorize.net
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with Authorize.net
@@ -492,7 +492,7 @@
 
     # Add the Referer to the headers passed on to Authorize.net
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with Authorize.net
@@ -614,7 +614,7 @@
 
     # Add the Referer to the headers passed on to Authorize.net
 
-    set header [ns_set new]
+    set header [ns_set create]
     ns_set put $header Referer $referer_url
 
     # Compile the URL for the GET communication with Authorize.net
Index: openacs-4/packages/beehive/www/create-edit-session4.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/beehive/www/create-edit-session4.tcl,v
diff -u -r1.5 -r1.6
--- openacs-4/packages/beehive/www/create-edit-session4.tcl	28 Dec 2006 05:38:45 -0000	1.5
+++ openacs-4/packages/beehive/www/create-edit-session4.tcl	26 Nov 2024 09:23:37 -0000	1.6
@@ -64,7 +64,7 @@
 				fconfigure $ifp -translation binary
 				fconfigure $ofp -translation binary
 
-				ns_cpfp $ifp $ofp
+				fcopy $ifp $ofp
 
 				close $ifp
 				close $ofp
@@ -91,7 +91,7 @@
 				fconfigure $ifpwb -translation binary
 				fconfigure $ofpwb -translation binary
 
-				ns_cpfp $ifpwb $ofpwb
+				fcopy $ifpwb $ofpwb
 
 				close $ifpwb
 				close $ofpwb
@@ -117,7 +117,7 @@
 				fconfigure $ifpdf -translation binary
 				fconfigure $ofpdf -translation binary
 
-				ns_cpfp $ifpdf $ofpdf
+				fcopy $ifpdf $ofpdf
 
 				close $ifpdf
 				close $ofpdf
Index: openacs-4/packages/beehive/www/duplicate2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/beehive/www/duplicate2.tcl,v
diff -u -r1.5 -r1.6
--- openacs-4/packages/beehive/www/duplicate2.tcl	28 Dec 2006 05:38:45 -0000	1.5
+++ openacs-4/packages/beehive/www/duplicate2.tcl	26 Nov 2024 09:23:37 -0000	1.6
@@ -61,7 +61,7 @@
 set ofp [open $filename2 w+]
 
 
-ns_cpfp $ifp $ofp
+fcopy $ifp $ofp
 
 close $ifp
 close $ofp
@@ -78,7 +78,7 @@
                         fconfigure $ifp -translation binary
 			fconfigure $ofp -translation binary
 
-			ns_cpfp $ifp $ofp
+			fcopy $ifp $ofp
 
 			close $ifp
 			close $ofp
@@ -103,7 +103,7 @@
 			fconfigure $ofp -translation binary
 
 
-			ns_cpfp $ifp $ofp
+			fcopy $ifp $ofp
 
 			close $ifp
 			close $ofp
@@ -127,7 +127,7 @@
 			fconfigure $ofp -translation binary
 
 
-			ns_cpfp $ifp $ofp
+			fcopy $ifp $ofp
 
 			close $ifp
 			close $ofp
Index: openacs-4/packages/cms/tcl/form-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/cms/tcl/form-procs.tcl,v
diff -u -r1.32 -r1.33
--- openacs-4/packages/cms/tcl/form-procs.tcl	9 May 2018 15:33:30 -0000	1.32
+++ openacs-4/packages/cms/tcl/form-procs.tcl	26 Nov 2024 09:23:37 -0000	1.33
@@ -946,7 +946,7 @@
     #     }
 
     # delete the tempfile
-    ns_unlink $tmpfile
+    file delete $tmpfile
 }
 
 
@@ -1031,7 +1031,7 @@
 
 } {
 
-    set tmp_file [ns_tmpnam]
+    set tmp_file [ns_mktemp]
 
     set fd [open $tmp_file w]
 
@@ -2023,7 +2023,7 @@
     }
 
     # delete the tempfile
-    ns_unlink $tmpfile
+    file delete $tmpfile
 }
 
 
Index: openacs-4/packages/cms/tcl/publish-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/cms/tcl/publish-procs.tcl,v
diff -u -r1.17 -r1.18
--- openacs-4/packages/cms/tcl/publish-procs.tcl	17 Apr 2018 14:47:02 -0000	1.17
+++ openacs-4/packages/cms/tcl/publish-procs.tcl	26 Nov 2024 09:23:38 -0000	1.18
@@ -31,8 +31,8 @@
 #   Get the page root. All items will be published to the 
 #   filesystem with their URLs relative to this root.
 #   The page root is controlled by the PageRoot parameter in CMS.
-#   A relative path is relative to [ns_info pageroot]
-#   The default is [ns_info pageroot]
+#   A relative path is relative to [ns_server pagedir]
+#   The default is [ns_server pagedir]
  
 #   @return The page root
  
@@ -46,7 +46,7 @@
 
 #   if { [string index $root_path 0] != "/" } {
 #     # Relative path, prepend server_root
-#     set root_path "[ns_info pageroot]/$root_path"
+#     set root_path "[ns_server pagedir]/$root_path"
 #   }
 
 #   return [ns_normalizepath $root_path]
@@ -155,7 +155,7 @@
 
 } {
   foreach_publish_path $url {
-    ns_unlink -nocomplain $filename 
+    file delete -nocomplain $filename 
     ns_log debug "publish::delete_multiple_files: Delete file $filename"
   } $root_path
 }
Index: openacs-4/packages/cms/www/modules/items/publish.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/cms/www/modules/items/publish.tcl,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/cms/www/modules/items/publish.tcl	16 Aug 2002 03:57:48 -0000	1.6
+++ openacs-4/packages/cms/www/modules/items/publish.tcl	26 Nov 2024 09:23:38 -0000	1.7
@@ -4,7 +4,7 @@
 request create
 request set_param revision_id -datatype integer
 
-set root_path [ns_info pageroot]
+set root_path [ns_server pagedir]
 
 db_transaction {
 
Index: openacs-4/packages/contacts/tcl/contacts-callback-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/tcl/contacts-callback-procs.tcl,v
diff -u -r1.66 -r1.67
--- openacs-4/packages/contacts/tcl/contacts-callback-procs.tcl	12 Aug 2018 12:30:06 -0000	1.66
+++ openacs-4/packages/contacts/tcl/contacts-callback-procs.tcl	26 Nov 2024 09:23:38 -0000	1.67
@@ -1313,7 +1313,7 @@
 	foreach file $email(files) {
 	    set file_title [lindex $file 2]
 	    set mime_type [lindex $file 0]
-	    set file_path [ns_tmpnam]
+	    set file_path [ns_mktemp]
 	    set f [open $file_path w+]
             fconfigure $f -translation binary
             puts -nonewline $f [lindex $file 3]
Index: openacs-4/packages/contacts/tcl/oo-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/tcl/oo-procs.tcl,v
diff -u -r1.14 -r1.15
--- openacs-4/packages/contacts/tcl/oo-procs.tcl	26 Nov 2024 08:27:28 -0000	1.14
+++ openacs-4/packages/contacts/tcl/oo-procs.tcl	26 Nov 2024 09:23:38 -0000	1.15
@@ -146,7 +146,7 @@
 	set pdf_filename $oo_file
 	set mime_type "application/odt"
     } else {
-	ns_unlink $oo_file
+	file delete $oo_file
     }
 
     if {$no_import_p} {
@@ -189,7 +189,7 @@
     } elseif {$return_pdf_with_id_p} {
 	return [list [content::revision::item_id -revision_id $revision_id] $mime_type $pdf_filename]
     } else  {
-	ns_unlink $pdf_filename
+	file delete $pdf_filename
 	return [content::revision::item_id -revision_id $revision_id]
     }
 }
@@ -216,7 +216,7 @@
     # This exec command is missing all the good things about openacs
     # Add the parameter to whatever package you put this procedure in.
     set pdfjoin_bin [parameter::get -parameter "PdfJoinBin" -default "/usr/bin/pdfjoin"]
-    set pdf_filename "[ns_tmpnam].pdf"
+    set pdf_filename "[ns_mktemp].pdf"
 
     catch {eval exec $pdfjoin_bin --outfile $pdf_filename [join $filenames " "]} result
     set mime_type "application/pdf"
@@ -262,7 +262,7 @@
     if {$return_pdf_p} {
 	return [list $mime_type $pdf_filename]
     } else {
-	ns_unlink $pdf_filename
+	file delete $pdf_filename
 	return [content::revision::item_id -revision_id $revision_id]
     }
 }
@@ -282,7 +282,7 @@
     @return The path to the new file.
 } {
     # Create a temporary directory
-    set dir [ns_tmpnam]
+    set dir [ns_mktemp]
     file mkdir $dir
 
     array set content_array $contents
@@ -296,7 +296,7 @@
     }
 
     # copy the document
-    ns_cp "${path}/$document_filename" "${dir}/$document_filename"
+    file copy "${path}/$document_filename" "${dir}/$document_filename"
 
     # Replace old content in document with new content
     # The zip command should replace the content.xml in the zipfile which
@@ -306,15 +306,15 @@
     }
 
     # copy odt file
-    set new_file "[ns_tmpnam].odt"
-    ns_cp "${dir}/$document_filename" $new_file
+    set new_file "[ns_mktemp].odt"
+    file copy "${dir}/$document_filename" $new_file
 
     # delete other tmpfiles
-    ns_unlink "${dir}/$document_filename"
+    file delete "${dir}/$document_filename"
     foreach filename [array names content_array] {
-	ns_unlink "${dir}/$filename"
+	file delete "${dir}/$filename"
     }
-    ns_rmdir $dir
+    file delete $dir
 
     return $new_file
 }
@@ -496,7 +496,7 @@
     flush $wfd
     close $wfd
 
-    set rpset [ns_set new [_ns_http_gets $timeout $rfd]]
+    set rpset [ns_set create [_ns_http_gets $timeout $rfd]]
     #ns_log Notice "*** rpset=$rpset"
     while 1 {
 	set line [_ns_http_gets $timeout $rfd]
@@ -800,7 +800,7 @@
 	    set pdf_filename $oo_file
 	    set mime_type "application/odt"
 	} else {
-	    ns_unlink $oo_file
+	    file delete $oo_file
 	}
 	
 	if {$no_import_p} {
@@ -842,7 +842,7 @@
 	} elseif {$return_pdf_with_id_p} {
 	    return [list [content::revision::item_id -revision_id $revision_id] $mime_type $pdf_filename]
 	} else  {
-	    ns_unlink $pdf_filename
+	    file delete $pdf_filename
 	    return [content::revision::item_id -revision_id $revision_id]
 	}
     }
@@ -1092,7 +1092,7 @@
 	    set pdf_filename $oo_file
 	    set mime_type "application/odt"
 	} else {
-	    ns_unlink $oo_file
+	    file delete $oo_file
 	}
 	
 	if {$no_import_p} {
@@ -1132,7 +1132,7 @@
 	} elseif {$return_pdf_with_id_p} {
 	    return [list [content::revision::item_id -revision_id $revision_id] $mime_type $pdf_filename]
 	} else  {
-	    ns_unlink $pdf_filename                   
+	    file delete $pdf_filename                   
 	    return [content::revision::item_id -revision_id $revision_id]
 	}
     }
@@ -1196,7 +1196,7 @@
 	set pdf_filename $oo_file
 	set mime_type "application/odt"
     } else {
-	ns_unlink $oo_file
+	file delete $oo_file
     }
     
     if {$no_import_p} {
@@ -1236,7 +1236,7 @@
     } elseif {$return_pdf_with_id_p} {
 	return [list [content::revision::item_id -revision_id $revision_id] $mime_type $pdf_filename]
     } else  {
-	ns_unlink $pdf_filename                   
+	file delete $pdf_filename                   
 	return [content::revision::item_id -revision_id $revision_id]
     }
 }