# Fossil

Check-in [23895c7b]

Overview
Comment: Update top OpenSSL 1.0.2l. Minor (harmless) compiler warnings in mkversion and codecheck1 (-Wall) Tarball | ZIP archive | SQL archive family | ancestors | descendants | both | trunk files | file ages | folders 23895c7b99d91794a480f0000ec93358385510ef7677d6c129bdf03b62116d43 jan.nijtmans 2017-07-13 10:22:03
References
 2017-08-06 23:48 Restore end-of-line spaces used to demonstrate mid-paragraph line break in markdown.md. The spaces were removed by [23895c7b99] which appeared to clean house on end-of-line whitespace in addition to its documented purpose. check-in: 1e491f6c user: andygoth tags: trunk
Context
 2017-07-14 20:47 Mention support for HTML-style comments in Markdown reference check-in: bfc29fb3 user: andygoth tags: trunk 2017-07-13 10:24 merge trunk check-in: 548fabe7 user: jan.nijtmans tags: openssl-1.1 10:22 Update top OpenSSL 1.0.2l. Minor (harmless) compiler warnings in mkversion and codecheck1 (-Wall) check-in: 23895c7b user: jan.nijtmans tags: trunk 2017-07-12 18:55 Remove an unused variable from the security audit webpage. check-in: 7c0b9714 user: drh tags: trunk
Changes

Changes to src/codecheck1.c.

 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525  ** the number of errors. */ static int scan_file(const char *zName, const char *zContent){ const char *z; int ln = 0; int szToken; int eToken; const char *zPrev; int ePrev; int szPrev; int lnPrev; int nCurly = 0; int x; unsigned fmtFlags = 0; int nErr = 0; if( zContent==0 ){ printf("cannot read file: %s\n", zName);   | | | |  508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525  ** the number of errors. */ static int scan_file(const char *zName, const char *zContent){ const char *z; int ln = 0; int szToken; int eToken; const char *zPrev = 0; int ePrev = 0; int szPrev = 0; int lnPrev = 0; int nCurly = 0; int x; unsigned fmtFlags = 0; int nErr = 0; if( zContent==0 ){ printf("cannot read file: %s\n", zName); 

Changes to src/makemake.tcl.

 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 .... 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519  endif #### The directories where the OpenSSL include and library files are located. # The recommended usage here is to use the Sysinternals junction tool # to create a hard link between an "openssl-1.x" sub-directory of the # Fossil source code directory and the target OpenSSL source directory. # OPENSSLDIR = $(SRCDIR)/../compat/openssl-1.0.2k OPENSSLINCDIR =$(OPENSSLDIR)/include OPENSSLLIBDIR = $(OPENSSLDIR) #### Either the directory where the Tcl library is installed or the Tcl # source code directory resides (depending on the value of the macro # FOSSIL_TCL_SOURCE). If this points to the Tcl install directory, # this directory must have "include" and "lib" sub-directories. If ................................................................................ # Enable support for the SQLite Encryption Extension? !ifndef USE_SEE USE_SEE = 0 !endif !if$(FOSSIL_ENABLE_SSL)!=0 SSLDIR = $(B)\compat\openssl-1.0.2k SSLINCDIR =$(SSLDIR)\inc32 !if $(FOSSIL_DYNAMIC_BUILD)!=0 SSLLIBDIR =$(SSLDIR)\out32dll !else SSLLIBDIR = $(SSLDIR)\out32 !endif SSLLFLAGS = /nologo /opt:ref /debug   | |  674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 .... 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519  endif #### The directories where the OpenSSL include and library files are located. # The recommended usage here is to use the Sysinternals junction tool # to create a hard link between an "openssl-1.x" sub-directory of the # Fossil source code directory and the target OpenSSL source directory. # OPENSSLDIR =$(SRCDIR)/../compat/openssl-1.0.2l OPENSSLINCDIR = $(OPENSSLDIR)/include OPENSSLLIBDIR =$(OPENSSLDIR) #### Either the directory where the Tcl library is installed or the Tcl # source code directory resides (depending on the value of the macro # FOSSIL_TCL_SOURCE). If this points to the Tcl install directory, # this directory must have "include" and "lib" sub-directories. If ................................................................................ # Enable support for the SQLite Encryption Extension? !ifndef USE_SEE USE_SEE = 0 !endif !if $(FOSSIL_ENABLE_SSL)!=0 SSLDIR =$(B)\compat\openssl-1.0.2l SSLINCDIR = $(SSLDIR)\inc32 !if$(FOSSIL_DYNAMIC_BUILD)!=0 SSLLIBDIR = $(SSLDIR)\out32dll !else SSLLIBDIR =$(SSLDIR)\out32 !endif SSLLFLAGS = /nologo /opt:ref /debug 

Changes to src/markdown.md.

 1 2 3 4 5 6 7 8 9 10 11 12  # Markdown Overview # ## Paragraphs ## > Paragraphs are divided by blank lines. > End a line with two or more spaces to force a mid-paragraph line break. ## Headings ## > # Top-level Heading Alternative Top Level Heading # Top-level Heading Variant # =============================   |  1 2 3 4 5 6 7 8 9 10 11 12  # Markdown Overview # ## Paragraphs ## > Paragraphs are divided by blank lines. > End a line with two or more spaces to force a mid-paragraph line break. ## Headings ## > # Top-level Heading Alternative Top Level Heading # Top-level Heading Variant # ============================= 

Changes to src/mkversion.c.

 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 .. 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 .. 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75  #include #include #include int main(int argc, char *argv[]){ FILE *m,*u,*v; char *z; int i, j, x, d; int vn[3]; char b[1000]; char vx[1000]; memset(b,0,sizeof(b)); memset(vx,0,sizeof(vx)); u = fopen(argv[1],"r"); if( fgets(b, sizeof(b)-1,u)==0 ){ ................................................................................ fprintf(stderr, "malformed VERSION file: %s\n", argv[3]); exit(1); } fclose(v); for(z=b; z[0] && z[0]!='\r' && z[0]!='\n'; z++){} *z = 0; printf("#define RELEASE_VERSION \"%s\"\n", b); x=0; i=j=0; z=b; vn[0] = vn[1] = vn[2] = 0; while(1){ if( z[0]>='0' && z[0]<='9' ){ x = x*10 + z[0] - '0'; }else{ if( j<3 ) vn[j++] = x; ................................................................................ } z++; } for(z=vx; z[0]=='0'; z++){} printf("#define RELEASE_VERSION_NUMBER %d%02d%02d\n", vn[0], vn[1], vn[2]); memset(vx,0,sizeof(vx)); strcpy(vx,b); d = 0; for(z=vx; z[0]; z++){ if( z[0]=='-' ){ z[0] = 0; break; } if( z[0]!='.' ) continue; if ( d<3 ){   > | > > < < <  10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 .. 46 47 48 49 50 51 52 53 54 55 56 57 58 59 .. 62 63 64 65 66 67 68 69 70 71 72 73 74 75  #include #include #include int main(int argc, char *argv[]){ FILE *m,*u,*v; char *z; #if defined(__DMC__) /* e.g. 0x857 */ int i = 0; #endif int j = 0, x = 0, d = 0; int vn[3]; char b[1000]; char vx[1000]; memset(b,0,sizeof(b)); memset(vx,0,sizeof(vx)); u = fopen(argv[1],"r"); if( fgets(b, sizeof(b)-1,u)==0 ){ ................................................................................ fprintf(stderr, "malformed VERSION file: %s\n", argv[3]); exit(1); } fclose(v); for(z=b; z[0] && z[0]!='\r' && z[0]!='\n'; z++){} *z = 0; printf("#define RELEASE_VERSION \"%s\"\n", b); z=b; vn[0] = vn[1] = vn[2] = 0; while(1){ if( z[0]>='0' && z[0]<='9' ){ x = x*10 + z[0] - '0'; }else{ if( j<3 ) vn[j++] = x; ................................................................................ } z++; } for(z=vx; z[0]=='0'; z++){} printf("#define RELEASE_VERSION_NUMBER %d%02d%02d\n", vn[0], vn[1], vn[2]); memset(vx,0,sizeof(vx)); strcpy(vx,b); for(z=vx; z[0]; z++){ if( z[0]=='-' ){ z[0] = 0; break; } if( z[0]!='.' ) continue; if ( d<3 ){ 

Changes to src/setup.c.

 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 .... 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801   entry_attribute("Delay in milliseconds before enabling hyperlinks", 5, "auto-hyperlink-delay", "ah-delay", "10", 0); @ @

Hyperlinks for user "nobody" are normally enabled as soon as the page @ finishes loading. But the first check-box below can be set to require mouse @ movement before enabling the links. One can also set a delay prior to enabling @ links by enter a positive number of milliseconds in the entry box above.

@
onoff_attribute("Require a CAPTCHA if not logged in", "require-captcha", "reqcapt", 1, 0); @

Require a CAPTCHA for edit operations (appending, creating, or @ editing wiki or tickets or adding attachments to wiki or tickets) ................................................................................ @ @

@
• The "Banner Ad-Unit" is used for wide pages. @
• The "Right-Column Ad-Unit" is used on pages with tall, narrow content. @
• If the "Right-Column Ad-Unit" is blank, the "Banner Ad-Unit" is used on all pages. @
• Suggested CSS changes: @
@ div.adunit_banner {   @   margin: auto;   @   width: 100%%;   @ }          |                 |          1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 .... 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801     entry_attribute("Delay in milliseconds before enabling hyperlinks", 5,                   "auto-hyperlink-delay", "ah-delay", "10", 0);   @
@

Hyperlinks for user "nobody" are normally enabled as soon as the page @ finishes loading. But the first check-box below can be set to require mouse @ movement before enabling the links. One can also set a delay prior to enabling @ links by enter a positive number of milliseconds in the entry box above.

@
onoff_attribute("Require a CAPTCHA if not logged in", "require-captcha", "reqcapt", 1, 0); @

Require a CAPTCHA for edit operations (appending, creating, or @ editing wiki or tickets or adding attachments to wiki or tickets) ................................................................................ @ @

@
• The "Banner Ad-Unit" is used for wide pages. @
• The "Right-Column Ad-Unit" is used on pages with tall, narrow content. @
• If the "Right-Column Ad-Unit" is blank, the "Banner Ad-Unit" is used on all pages. @
• Suggested CSS changes: @
@ div.adunit_banner {   @   margin: auto;   @   width: 100%%;   @ } 

Changes to win/Makefile.mingw.

 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182  endif #### The directories where the OpenSSL include and library files are located. # The recommended usage here is to use the Sysinternals junction tool # to create a hard link between an "openssl-1.x" sub-directory of the # Fossil source code directory and the target OpenSSL source directory. # OPENSSLDIR = $(SRCDIR)/../compat/openssl-1.0.2k OPENSSLINCDIR =$(OPENSSLDIR)/include OPENSSLLIBDIR = $(OPENSSLDIR) #### Either the directory where the Tcl library is installed or the Tcl # source code directory resides (depending on the value of the macro # FOSSIL_TCL_SOURCE). If this points to the Tcl install directory, # this directory must have "include" and "lib" sub-directories. If   |  168 169 170 171 172 173 174 175 176 177 178 179 180 181 182  endif #### The directories where the OpenSSL include and library files are located. # The recommended usage here is to use the Sysinternals junction tool # to create a hard link between an "openssl-1.x" sub-directory of the # Fossil source code directory and the target OpenSSL source directory. # OPENSSLDIR =$(SRCDIR)/../compat/openssl-1.0.2l OPENSSLINCDIR = $(OPENSSLDIR)/include OPENSSLLIBDIR =$(OPENSSLDIR) #### Either the directory where the Tcl library is installed or the Tcl # source code directory resides (depending on the value of the macro # FOSSIL_TCL_SOURCE). If this points to the Tcl install directory, # this directory must have "include" and "lib" sub-directories. If 

Changes to win/Makefile.mingw.mistachkin.

 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182  endif #### The directories where the OpenSSL include and library files are located. # The recommended usage here is to use the Sysinternals junction tool # to create a hard link between an "openssl-1.x" sub-directory of the # Fossil source code directory and the target OpenSSL source directory. # OPENSSLDIR = $(SRCDIR)/../compat/openssl-1.0.2k OPENSSLINCDIR =$(OPENSSLDIR)/include OPENSSLLIBDIR = $(OPENSSLDIR) #### Either the directory where the Tcl library is installed or the Tcl # source code directory resides (depending on the value of the macro # FOSSIL_TCL_SOURCE). If this points to the Tcl install directory, # this directory must have "include" and "lib" sub-directories. If   |  168 169 170 171 172 173 174 175 176 177 178 179 180 181 182  endif #### The directories where the OpenSSL include and library files are located. # The recommended usage here is to use the Sysinternals junction tool # to create a hard link between an "openssl-1.x" sub-directory of the # Fossil source code directory and the target OpenSSL source directory. # OPENSSLDIR =$(SRCDIR)/../compat/openssl-1.0.2l OPENSSLINCDIR = $(OPENSSLDIR)/include OPENSSLLIBDIR =$(OPENSSLDIR) #### Either the directory where the Tcl library is installed or the Tcl # source code directory resides (depending on the value of the macro # FOSSIL_TCL_SOURCE). If this points to the Tcl install directory, # this directory must have "include" and "lib" sub-directories. If 

Changes to win/Makefile.msc.

 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110   # Enable support for the SQLite Encryption Extension? !ifndef USE_SEE USE_SEE = 0 !endif !if $(FOSSIL_ENABLE_SSL)!=0 SSLDIR =$(B)\compat\openssl-1.0.2k SSLINCDIR = $(SSLDIR)\inc32 !if$(FOSSIL_DYNAMIC_BUILD)!=0 SSLLIBDIR = $(SSLDIR)\out32dll !else SSLLIBDIR =$(SSLDIR)\out32 !endif SSLLFLAGS = /nologo /opt:ref /debug   |  96 97 98 99 100 101 102 103 104 105 106 107 108 109 110   # Enable support for the SQLite Encryption Extension? !ifndef USE_SEE USE_SEE = 0 !endif !if $(FOSSIL_ENABLE_SSL)!=0 SSLDIR =$(B)\compat\openssl-1.0.2l SSLINCDIR = $(SSLDIR)\inc32 !if$(FOSSIL_DYNAMIC_BUILD)!=0 SSLLIBDIR = $(SSLDIR)\out32dll !else SSLLIBDIR =$(SSLDIR)\out32 !endif SSLLFLAGS = /nologo /opt:ref /debug 

Changes to www/build.wiki.

 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148  file "win\buildmsvc.bat" may be used and it will attempt to detect and use the latest installed version of MSVC.

To enable the optional OpenSSL support, first download the official source code for OpenSSL and extract it to an appropriately named "openssl-X.Y.ZA" subdirectory within the local [/tree?ci=trunk&name=compat | compat] directory (e.g. "compat/openssl-1.0.2k"), then make sure that some recent Perl binaries are installed locally, and finally run one of the following commands:
nmake /f Makefile.msc FOSSIL_ENABLE_SSL=1 FOSSIL_BUILD_SSL=1 PERLDIR=C:\full\path\to\Perl\bin
buildmsvc.bat FOSSIL_ENABLE_SSL=1 FOSSIL_BUILD_SSL=1 PERLDIR=C:\full\path\to\Perl\bin          |          134 135 136 137 138 139 140 141 142 143 144 145 146 147 148   file "win\buildmsvc.bat" may be used and it will attempt to detect and use the latest installed version of MSVC.

To enable the optional OpenSSL support, first download the official source code for OpenSSL and extract it to an appropriately named "openssl-X.Y.ZA" subdirectory within the local [/tree?ci=trunk&name=compat | compat] directory (e.g. "compat/openssl-1.0.2l"), then make sure that some recent Perl binaries are installed locally, and finally run one of the following commands:
nmake /f Makefile.msc FOSSIL_ENABLE_SSL=1 FOSSIL_BUILD_SSL=1 PERLDIR=C:\full\path\to\Perl\bin
buildmsvc.bat FOSSIL_ENABLE_SSL=1 FOSSIL_BUILD_SSL=1 PERLDIR=C:\full\path\to\Perl\bin