Documentation Source Text

Check-in [9c03c81fbb]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update the built-in wapp.tcl to the latest from wapp.tcl.tk.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | search-refactor
Files: files | file ages | folders
SHA3-256: 9c03c81fbb7f9b47dce2dbf16afd6155072dd666fc5398ccbe01c43551aad0cb
User & Date: drh 2018-02-05 01:15:44.335
Context
2018-02-05
01:36
Rework the CGI scripts for search so that they use the Wapp framework (https://wapp.tcl.tk). (check-in: 16a431615f user: drh tags: trunk)
01:15
Update the built-in wapp.tcl to the latest from wapp.tcl.tk. (Closed-Leaf check-in: 9c03c81fbb user: drh tags: search-refactor)
00:47
On the /search.d/admin page, show the Wapp environment if the env=1 query parameter is present. (check-in: ebe9a614eb user: drh tags: search-refactor)
Changes
Unified Diff Ignore Whitespace Patch
Changes to search/wapp.tcl.
314
315
316
317
318
319
320

321
322
323
324
325
326
327
proc wapp-debug-env {} {
  global wapp
  set out {}
  foreach var [lsort [dict keys $wapp]] {
    if {[string index $var 0]=="."} continue
    append out "$var = [list [dict get $wapp $var]]\n"
  }

  return $out
}

# Start up the wapp framework.  Parameters are a list passed as the
# single argument.
#
#    -server $PORT         Listen for HTTP requests on this TCP port $PORT







>







314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
proc wapp-debug-env {} {
  global wapp
  set out {}
  foreach var [lsort [dict keys $wapp]] {
    if {[string index $var 0]=="."} continue
    append out "$var = [list [dict get $wapp $var]]\n"
  }
  append out "\[pwd\] = [list [pwd]]\n"
  return $out
}

# Start up the wapp framework.  Parameters are a list passed as the
# single argument.
#
#    -server $PORT         Listen for HTTP requests on this TCP port $PORT
506
507
508
509
510
511
512

513
514
515
516
517
518
519
520
521
      }
      if {[string length [dict get $W .header]]>100000} {
        error "HTTP request header too big - possible DOS attack"
      }
    } elseif {$n==0} {
      # We have reached the blank line that terminates the header.
      global argv0

      dict set W SCRIPT_FILENAME $argv0
      dict set W DOCUMENT_ROOT [file dir $argv0]
      if {[wappInt-parse-header $chan]} {
        catch {close $chan}
        return
      }
      set len 0
      if {[dict exists $W CONTENT_LENGTH]} {
        set len [dict get $W CONTENT_LENGTH]







>
|
|







507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
      }
      if {[string length [dict get $W .header]]>100000} {
        error "HTTP request header too big - possible DOS attack"
      }
    } elseif {$n==0} {
      # We have reached the blank line that terminates the header.
      global argv0
      set a0 [file normalize $argv0]
      dict set W SCRIPT_FILENAME $a0
      dict set W DOCUMENT_ROOT [file dir $a0]
      if {[wappInt-parse-header $chan]} {
        catch {close $chan}
        return
      }
      set len 0
      if {[dict exists $W CONTENT_LENGTH]} {
        set len [dict get $W CONTENT_LENGTH]