##// END OF EJS Templates
dispatch: protect against malicious 'hg serve --stdio' invocations (sec)...
dispatch: protect against malicious 'hg serve --stdio' invocations (sec) Some shared-ssh installations assume that 'hg serve --stdio' is a safe command to run for minimally trusted users. Unfortunately, the messy implementation of argument parsing here meant that trying to access a repo named '--debugger' would give the user a pdb prompt, thereby sidestepping any hoped-for sandboxing. Serving repositories over HTTP(S) is unaffected. We're not currently hardening any subcommands other than 'serve'. If your service exposes other commands to users with arbitrary repository names, it is imperative that you defend against repository names of '--debugger' and anything starting with '--config'. The read-only mode of hg-ssh stopped working because it provided its hook configuration to "hg serve --stdio" via --config parameter. This is banned for security reasons now. This patch switches it to directly call ui.setconfig(). If your custom hosting infrastructure relies on passing --config to "hg serve --stdio", you'll need to find a different way to get that configuration into Mercurial, either by using ui.setconfig() as hg-ssh does in this patch, or by placing an hgrc file someplace where Mercurial will read it. mitrandir@fb.com provided some extra fixes for the dispatch code and for hg-ssh in places that I overlooked.

File last commit:

r30888:561a019c stable
r32050:77eaf953 4.1.3 stable
Show More
mercurial.wxs
162 lines | 7.0 KiB | text/plain | TextLexer
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <?xml version='1.0' encoding='windows-1252'?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
<!-- Copyright 2010 Steve Borho <steve@borho.org>
This software may be used and distributed according to the terms of the
GNU General Public License version 2 or any later version. -->
Adrian Buehlmann
wix updates...
r10930 <?include guids.wxi ?>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <?include defines.wxi ?>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513
Steve Borho
wix: switch Mercurial Windows installer to use py2exe --bundle 3...
r13041 <?if $(var.Platform) = "x64" ?>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <?define PFolder = ProgramFiles64Folder ?>
Steve Borho
wix: switch Mercurial Windows installer to use py2exe --bundle 3...
r13041 <?else?>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <?define PFolder = ProgramFilesFolder ?>
Steve Borho
wix: switch Mercurial Windows installer to use py2exe --bundle 3...
r13041 <?endif?>
Adrian Buehlmann
wix updates...
r10930 <Product Id='*'
Mads Kiilerich
codingstyle: remove trailing spaces in various text files...
r19023 Name='Mercurial $(var.Version) ($(var.Platform))'
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 UpgradeCode='$(var.ProductUpgradeCode)'
Adrian Buehlmann
wix updates...
r10930 Language='1033' Codepage='1252' Version='$(var.Version)'
Manufacturer='Matt Mackall and others'>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513
Adrian Buehlmann
wix updates...
r10930 <Package Id='*'
Keywords='Installer'
Description="Mercurial distributed SCM (version $(var.Version))"
Comments='$(var.Comments)'
Steve Borho
wix: add support for x64 native MSI packages
r13042 Platform='$(var.Platform)'
Adrian Buehlmann
wix updates...
r10930 Manufacturer='Matt Mackall and others'
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 InstallerVersion='300' Languages='1033' Compressed='yes' SummaryCodepage='1252' />
Adrian Buehlmann
wix updates...
r10930 <Media Id='1' Cabinet='mercurial.cab' EmbedCab='yes' DiskPrompt='CD-ROM #1'
CompressionLevel='high' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <Property Id='DiskPrompt' Value="Mercurial $(var.Version) Installation [1]" />
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Condition Message='Mercurial MSI installers require Windows XP or higher'>
VersionNT >= 501
</Condition>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513
<Property Id="INSTALLDIR">
Adrian Buehlmann
wix updates...
r10930 <ComponentSearch Id='SearchForMainExecutableComponent'
Guid='$(var.ComponentMainExecutableGUID)' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Property>
<!--Property Id='ARPCOMMENTS'>any comments</Property-->
FUJIWARA Katsunori
misc: replace domain of mercurial ML address by mercurial-scm.org...
r30888 <Property Id='ARPCONTACT'>mercurial@mercurial-scm.org</Property>
Matt Mackall
urls: bulk-change primary website URLs
r26421 <Property Id='ARPHELPLINK'>https://mercurial-scm.org/wiki/</Property>
<Property Id='ARPURLINFOABOUT'>https://mercurial-scm.org/about/</Property>
<Property Id='ARPURLUPDATEINFO'>https://mercurial-scm.org/downloads/</Property>
<Property Id='ARPHELPTELEPHONE'>https://mercurial-scm.org/wiki/Support</Property>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <Property Id='ARPPRODUCTICON'>hgIcon.ico</Property>
<Property Id='INSTALLEDMERCURIALPRODUCTS' Secure='yes'></Property>
<Property Id='REINSTALLMODE'>amus</Property>
Steve Borho
wix: pre-check the 'I approve this license' checkbox...
r10610 <!--Auto-accept the license page-->
<Property Id='LicenseAccepted'>1</Property>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <Directory Id='TARGETDIR' Name='SourceDir'>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Directory Id='$(var.PFolder)' Name='PFiles'>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <Directory Id='INSTALLDIR' Name='Mercurial'>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Component Id='MainExecutable' Guid='$(var.ComponentMainExecutableGUID)' Win64='$(var.IsX64)'>
Adrian Buehlmann
wix updates...
r10930 <File Id='hgEXE' Name='hg.exe' Source='dist\hg.exe' KeyPath='yes' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <Environment Id="Environment" Name="PATH" Part="last" System="yes"
Steve Borho
wix: drop bin/ folder from MSI installers (issue 2673)...
r13563 Permanent="no" Value="[INSTALLDIR]" Action="set" />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Component>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Component Id='ReadMe' Guid='$(var.ReadMe.guid)' Win64='$(var.IsX64)'>
Adrian Buehlmann
wix updates...
r10930 <File Id='ReadMe' Name='ReadMe.html' Source='contrib\win32\ReadMe.html'
KeyPath='yes'/>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Component>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Component Id='COPYING' Guid='$(var.COPYING.guid)' Win64='$(var.IsX64)'>
Adrian Buehlmann
wix updates...
r10930 <File Id='COPYING' Name='COPYING.rtf' Source='contrib\wix\COPYING.rtf'
KeyPath='yes'/>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Component>
Steve Borho
wix: switch Mercurial Windows installer to use py2exe --bundle 3...
r13041
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <Directory Id='HGRCD' Name='hgrc.d'>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Component Id='mercurial.rc' Guid='$(var.mercurial.rc.guid)' Win64='$(var.IsX64)'>
Adrian Buehlmann
wix updates...
r10930 <File Id='mercurial.rc' Name='Mercurial.rc' Source='contrib\win32\mercurial.ini'
ReadOnly='yes' KeyPath='yes'/>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Component>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Component Id='mergetools.rc' Guid='$(var.mergetools.rc.guid)' Win64='$(var.IsX64)'>
Pascal Quantin
win32: fix win32 installers generation...
r23174 <File Id='mergetools.rc' Name='MergeTools.rc' Source='mercurial\default.d\mergetools.rc'
Adrian Buehlmann
wix updates...
r10930 ReadOnly='yes' KeyPath='yes'/>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Component>
</Directory>
Steve Borho
wix: switch Mercurial Windows installer to use py2exe --bundle 3...
r13041
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Directory>
</Directory>
<Directory Id="ProgramMenuFolder" Name="Programs">
<Directory Id="ProgramMenuDir" Name="Mercurial $(var.Version)">
Steve Borho
wix: add support for x64 native MSI packages
r13042 <Component Id="ProgramMenuDir" Guid="$(var.ProgramMenuDir.guid)" Win64='$(var.IsX64)'>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <RemoveFolder Id='ProgramMenuDir' On='uninstall' />
<RegistryValue Root='HKCU' Key='Software\Mercurial\InstallDir' Type='string'
Value='[INSTALLDIR]' KeyPath='yes' />
Adrian Buehlmann
wix updates...
r10930 <Shortcut Id='UrlShortcut' Directory='ProgramMenuDir' Name='Mercurial Web Site'
Target='[ARPHELPLINK]' Icon="hgIcon.ico" IconIndex='0' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Component>
</Directory>
</Directory>
Steve Borho
wix: add support for x64 native MSI packages
r13042 <?if $(var.Platform) = "x86" ?>
<Merge Id='VCRuntime' DiskId='1' Language='1033'
SourceFile='$(var.VCRedistSrcDir)\microsoft.vcxx.crt.x86_msm.msm' />
<Merge Id='VCRuntimePolicy' DiskId='1' Language='1033'
SourceFile='$(var.VCRedistSrcDir)\policy.x.xx.microsoft.vcxx.crt.x86_msm.msm' />
<?else?>
<Merge Id='VCRuntime' DiskId='1' Language='1033'
SourceFile='$(var.VCRedistSrcDir)\microsoft.vcxx.crt.x64_msm.msm' />
<Merge Id='VCRuntimePolicy' DiskId='1' Language='1033'
SourceFile='$(var.VCRedistSrcDir)\policy.x.xx.microsoft.vcxx.crt.x64_msm.msm' />
<?endif?>
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Directory>
Adrian Buehlmann
wix: don't show version in title of root feature...
r10733 <Feature Id='Complete' Title='Mercurial' Description='The complete package'
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 Display='expand' Level='1' ConfigurableDirectory='INSTALLDIR' >
<Feature Id='MainProgram' Title='Program' Description='Mercurial command line app'
Level='1' Absent='disallow' >
<ComponentRef Id='MainExecutable' />
Steve Borho
wix: switch Mercurial Windows installer to use py2exe --bundle 3...
r13041 <ComponentRef Id='distOutput' />
Steve Borho
wix: move library.zip and all *.pyd into a lib/ folder...
r25409 <ComponentRef Id='libOutput' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <ComponentRef Id='ProgramMenuDir' />
<ComponentRef Id='ReadMe' />
<ComponentRef Id='COPYING' />
<ComponentRef Id='mercurial.rc' />
<ComponentRef Id='mergetools.rc' />
Matt Harbison
wix: add help for current internal topics...
r27684 <ComponentGroupRef Id='helpFolder' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 <ComponentGroupRef Id='templatesFolder' />
<MergeRef Id='VCRuntime' />
<MergeRef Id='VCRuntimePolicy' />
</Feature>
<Feature Id='Locales' Title='Translations' Description='Translations' Level='1'>
<ComponentGroupRef Id='localeFolder' />
Adrian Buehlmann
wix: refactor and new guids.wxi
r10828 <ComponentRef Id='i18nFolder' />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513 </Feature>
<Feature Id='Documentation' Title='Documentation' Description='HTML man pages' Level='1'>
<ComponentGroupRef Id='docFolder' />
</Feature>
<Feature Id='Misc' Title='Miscellaneous' Description='Contributed scripts' Level='1'>
<ComponentGroupRef Id='contribFolder' />
</Feature>
</Feature>
<UIRef Id="WixUI_FeatureTree" />
<UIRef Id="WixUI_ErrorProgressText" />
Adrian Buehlmann
contrib/wix: add COPYING.rtf...
r10552 <WixVariable Id="WixUILicenseRtf" Value="contrib\wix\COPYING.rtf" />
Adrian Buehlmann
contrib/wix: switch *.wxs files to LF eol
r10513
<Icon Id="hgIcon.ico" SourceFile="contrib/win32/mercurial.ico" />
<Upgrade Id='$(var.ProductUpgradeCode)'>
<UpgradeVersion
IncludeMinimum='yes' Minimum='0.0.0' IncludeMaximum='no' OnlyDetect='no'
Property='INSTALLEDMERCURIALPRODUCTS' />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts After='InstallInitialize'/>
</InstallExecuteSequence>
</Product>
</Wix>