Fossil SCM

Merge the latest trunk changes into the versionable-settings branch.

drh 2011-05-24 12:02 versionable-settings merge
Commit 9c915adb0a3d84c5032867e69d650797c59741cc
+1 -1
--- Makefile
+++ Makefile
@@ -58,11 +58,11 @@
5858
5959
# You should not need to change anything below this line
6060
###############################################################################
6161
#
6262
# Automatic platform-specific options.
63
-HOST_OS!= uname -s
63
+HOST_OS :sh = uname -s
6464
6565
LIB.SunOS= -lsocket -lnsl
6666
LIB += $(LIB.$(HOST_OS))
6767
6868
TCC.DragonFly += -DUSE_PREAD
6969
--- Makefile
+++ Makefile
@@ -58,11 +58,11 @@
58
59 # You should not need to change anything below this line
60 ###############################################################################
61 #
62 # Automatic platform-specific options.
63 HOST_OS!= uname -s
64
65 LIB.SunOS= -lsocket -lnsl
66 LIB += $(LIB.$(HOST_OS))
67
68 TCC.DragonFly += -DUSE_PREAD
69
--- Makefile
+++ Makefile
@@ -58,11 +58,11 @@
58
59 # You should not need to change anything below this line
60 ###############################################################################
61 #
62 # Automatic platform-specific options.
63 HOST_OS :sh = uname -s
64
65 LIB.SunOS= -lsocket -lnsl
66 LIB += $(LIB.$(HOST_OS))
67
68 TCC.DragonFly += -DUSE_PREAD
69
+8 -4
--- src/cgi.c
+++ src/cgi.c
@@ -191,20 +191,24 @@
191191
const char *zName, /* Name of the cookie */
192192
const char *zValue, /* Value of the cookie. Automatically escaped */
193193
const char *zPath, /* Path cookie applies to. NULL means "/" */
194194
int lifetime /* Expiration of the cookie in seconds from now */
195195
){
196
+ char *zSecure = "";
196197
if( zPath==0 ) zPath = g.zTop;
198
+ if( g.zBaseURL!=0 && strncmp(g.zBaseURL, "https:", 6)==0 ){
199
+ zSecure = " secure;";
200
+ }
197201
if( lifetime>0 ){
198202
lifetime += (int)time(0);
199203
blob_appendf(&extraHeader,
200
- "Set-Cookie: %s=%t; Path=%s; expires=%z; Version=1\r\n",
201
- zName, zValue, zPath, cgi_rfc822_datestamp(lifetime));
204
+ "Set-Cookie: %s=%t; Path=%s; expires=%z; HttpOnly;%s Version=1\r\n",
205
+ zName, zValue, zPath, cgi_rfc822_datestamp(lifetime), zSecure);
202206
}else{
203207
blob_appendf(&extraHeader,
204
- "Set-Cookie: %s=%t; Path=%s; Version=1\r\n",
205
- zName, zValue, zPath);
208
+ "Set-Cookie: %s=%t; Path=%s; HttpOnly;%s Version=1\r\n",
209
+ zName, zValue, zPath, zSecure);
206210
}
207211
}
208212
209213
#if 0
210214
/*
211215
--- src/cgi.c
+++ src/cgi.c
@@ -191,20 +191,24 @@
191 const char *zName, /* Name of the cookie */
192 const char *zValue, /* Value of the cookie. Automatically escaped */
193 const char *zPath, /* Path cookie applies to. NULL means "/" */
194 int lifetime /* Expiration of the cookie in seconds from now */
195 ){
 
196 if( zPath==0 ) zPath = g.zTop;
 
 
 
197 if( lifetime>0 ){
198 lifetime += (int)time(0);
199 blob_appendf(&extraHeader,
200 "Set-Cookie: %s=%t; Path=%s; expires=%z; Version=1\r\n",
201 zName, zValue, zPath, cgi_rfc822_datestamp(lifetime));
202 }else{
203 blob_appendf(&extraHeader,
204 "Set-Cookie: %s=%t; Path=%s; Version=1\r\n",
205 zName, zValue, zPath);
206 }
207 }
208
209 #if 0
210 /*
211
--- src/cgi.c
+++ src/cgi.c
@@ -191,20 +191,24 @@
191 const char *zName, /* Name of the cookie */
192 const char *zValue, /* Value of the cookie. Automatically escaped */
193 const char *zPath, /* Path cookie applies to. NULL means "/" */
194 int lifetime /* Expiration of the cookie in seconds from now */
195 ){
196 char *zSecure = "";
197 if( zPath==0 ) zPath = g.zTop;
198 if( g.zBaseURL!=0 && strncmp(g.zBaseURL, "https:", 6)==0 ){
199 zSecure = " secure;";
200 }
201 if( lifetime>0 ){
202 lifetime += (int)time(0);
203 blob_appendf(&extraHeader,
204 "Set-Cookie: %s=%t; Path=%s; expires=%z; HttpOnly;%s Version=1\r\n",
205 zName, zValue, zPath, cgi_rfc822_datestamp(lifetime), zSecure);
206 }else{
207 blob_appendf(&extraHeader,
208 "Set-Cookie: %s=%t; Path=%s; HttpOnly;%s Version=1\r\n",
209 zName, zValue, zPath, zSecure);
210 }
211 }
212
213 #if 0
214 /*
215
--- src/config.h
+++ src/config.h
@@ -82,10 +82,17 @@
8282
8383
#ifndef _RC_COMPILE_
8484
8585
#include "sqlite3.h"
8686
87
+/*
88
+** On Solaris, getpass() will only return up to 8 characters. getpassphrase() returns up to 257.
89
+*/
90
+#if defined(__sun__) || defined(sun)
91
+ #define getpass getpassphrase
92
+#endif
93
+
8794
/*
8895
** Typedef for a 64-bit integer
8996
*/
9097
typedef sqlite3_int64 i64;
9198
typedef sqlite3_uint64 u64;
9299
--- src/config.h
+++ src/config.h
@@ -82,10 +82,17 @@
82
83 #ifndef _RC_COMPILE_
84
85 #include "sqlite3.h"
86
 
 
 
 
 
 
 
87 /*
88 ** Typedef for a 64-bit integer
89 */
90 typedef sqlite3_int64 i64;
91 typedef sqlite3_uint64 u64;
92
--- src/config.h
+++ src/config.h
@@ -82,10 +82,17 @@
82
83 #ifndef _RC_COMPILE_
84
85 #include "sqlite3.h"
86
87 /*
88 ** On Solaris, getpass() will only return up to 8 characters. getpassphrase() returns up to 257.
89 */
90 #if defined(__sun__) || defined(sun)
91 #define getpass getpassphrase
92 #endif
93
94 /*
95 ** Typedef for a 64-bit integer
96 */
97 typedef sqlite3_int64 i64;
98 typedef sqlite3_uint64 u64;
99
--- src/http_ssl.c
+++ src/http_ssl.c
@@ -182,15 +182,24 @@
182182
if( SSL_get_verify_result(ssl) != X509_V_OK ){
183183
char *desc, *prompt;
184184
char *warning = "";
185185
Blob ans;
186186
BIO *mem;
187
+ unsigned char md[32];
188
+ unsigned int mdLength = 31;
187189
188190
mem = BIO_new(BIO_s_mem());
189191
X509_NAME_print_ex(mem, X509_get_subject_name(cert), 2, XN_FLAG_MULTILINE);
190192
BIO_puts(mem, "\n\nIssued By:\n\n");
191193
X509_NAME_print_ex(mem, X509_get_issuer_name(cert), 2, XN_FLAG_MULTILINE);
194
+ BIO_puts(mem, "\n\nSHA1 Fingerprint:\n\n ");
195
+ if(X509_digest(cert, EVP_sha1(), md, &mdLength)){
196
+ int j;
197
+ for( j = 0; j < mdLength; ++j ) {
198
+ BIO_printf(mem, " %02x", md[j]);
199
+ }
200
+ }
192201
BIO_write(mem, "", 1); // null-terminate mem buffer
193202
BIO_get_mem_data(mem, &desc);
194203
195204
if( hasSavedCertificate ){
196205
warning = "WARNING: Certificate doesn't match the "
197206
--- src/http_ssl.c
+++ src/http_ssl.c
@@ -182,15 +182,24 @@
182 if( SSL_get_verify_result(ssl) != X509_V_OK ){
183 char *desc, *prompt;
184 char *warning = "";
185 Blob ans;
186 BIO *mem;
 
 
187
188 mem = BIO_new(BIO_s_mem());
189 X509_NAME_print_ex(mem, X509_get_subject_name(cert), 2, XN_FLAG_MULTILINE);
190 BIO_puts(mem, "\n\nIssued By:\n\n");
191 X509_NAME_print_ex(mem, X509_get_issuer_name(cert), 2, XN_FLAG_MULTILINE);
 
 
 
 
 
 
 
192 BIO_write(mem, "", 1); // null-terminate mem buffer
193 BIO_get_mem_data(mem, &desc);
194
195 if( hasSavedCertificate ){
196 warning = "WARNING: Certificate doesn't match the "
197
--- src/http_ssl.c
+++ src/http_ssl.c
@@ -182,15 +182,24 @@
182 if( SSL_get_verify_result(ssl) != X509_V_OK ){
183 char *desc, *prompt;
184 char *warning = "";
185 Blob ans;
186 BIO *mem;
187 unsigned char md[32];
188 unsigned int mdLength = 31;
189
190 mem = BIO_new(BIO_s_mem());
191 X509_NAME_print_ex(mem, X509_get_subject_name(cert), 2, XN_FLAG_MULTILINE);
192 BIO_puts(mem, "\n\nIssued By:\n\n");
193 X509_NAME_print_ex(mem, X509_get_issuer_name(cert), 2, XN_FLAG_MULTILINE);
194 BIO_puts(mem, "\n\nSHA1 Fingerprint:\n\n ");
195 if(X509_digest(cert, EVP_sha1(), md, &mdLength)){
196 int j;
197 for( j = 0; j < mdLength; ++j ) {
198 BIO_printf(mem, " %02x", md[j]);
199 }
200 }
201 BIO_write(mem, "", 1); // null-terminate mem buffer
202 BIO_get_mem_data(mem, &desc);
203
204 if( hasSavedCertificate ){
205 warning = "WARNING: Certificate doesn't match the "
206

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button