|
5 | 5 | ((name :initarg :name :accessor name)
|
6 | 6 | (value :initarg :value :accessor value)))
|
7 | 7 |
|
8 |
| -(defmethod make-lsxpack-header ((header header)) |
9 |
| - (format t "name len ~D value len ~D~%" (length (name header)) (length (value header))) |
10 |
| - (let ((lheader (with-initialize-foreign-struct lsquic:lsxpack-header |
11 |
| - (setf lsquic:buf (foreign-string-alloc (format nil "~A~A" (name header) (value header)) :null-terminated-p nil)) |
12 |
| - (setf lsquic:name-len (length (name header))) |
13 |
| - (setf lsquic:name-offset 0) |
14 |
| - (setf lsquic:val-len (length (value header))) |
15 |
| - (setf lsquic:val-offset (length (name header))) |
16 |
| - ))) |
17 |
| - |
18 |
| - (with-foreign-slots ((name-len name-offset val-len val-offset) lheader (:struct lsquic:lsxpack-header)) |
19 |
| - (format t "name len ~D name offset ~D value len ~D value offset ~D~%" name-len name-offset val-len val-offset)) |
20 |
| - |
21 |
| - ;; (let ((buf (foreign-string-alloc (format nil "~A~A" (name header) (value header))))) |
22 |
| - |
23 |
| - ;; (lsxpack-header-set-offset2 |
24 |
| - ;; lheader |
25 |
| - ;; buf |
26 |
| - ;; 0 |
27 |
| - ;; (length (name header)) |
28 |
| - ;; (length (name header)) |
29 |
| - ;; (length (value header)))) |
30 |
| - |
31 |
| - ;; (with-foreign-slots ((name-len name-offset val-len val-offset) lheader (:struct lsquic:lsxpack-header)) |
32 |
| - ;; (format t "name len ~D name offset ~D value len ~D value offset ~D~%" name-len name-offset val-len val-offset)) |
33 |
| - (format t "~A~%" (lsxpack-header-get-name lheader)) |
34 |
| - (format t "~A~%" (lsxpack-header-get-value lheader)) |
35 |
| - lheader)) |
36 |
| - |
37 | 8 | (defclass request ()
|
38 | 9 | ((path :initarg :path :accessor path)
|
39 | 10 | (scheme :initarg :scheme :accessor scheme)
|
|
42 | 13 | (verb :initarg :verb :accessor verb)
|
43 | 14 | (body :initarg :body :accessor body)))
|
44 | 15 |
|
| 16 | +(defmethod make-lsxpack-header ((header header)) |
| 17 | + (with-initialize-foreign-struct lsquic:lsxpack-header |
| 18 | + (setf lsquic:buf |
| 19 | + (foreign-string-alloc |
| 20 | + (format nil "~A~A" (name header) (value header)))) |
| 21 | + (setf lsquic:name-len (length (name header))) |
| 22 | + (setf lsquic:name-offset 0) |
| 23 | + (setf lsquic:val-len (length (value header))) |
| 24 | + (setf lsquic:val-offset (length (name header))))) |
| 25 | + |
45 | 26 | (defmethod required-headers ((request request))
|
46 | 27 | (list
|
47 | 28 | (make-instance 'header :name ":verb" :value (verb request))
|
|
56 | 37 | :pointer
|
57 | 38 | :count header-count
|
58 | 39 | :initial-contents (mapcar #'make-lsxpack-header all-headers))))
|
59 |
| - |
60 | 40 | (with-initialize-foreign-struct lsquic::http-headers
|
61 | 41 | (setf lsquic:count header-count)
|
62 | 42 | (setf lsquic:headers lsxpack-headers) lsxpack-headers)))
|
0 commit comments