Merge "Issue #1835 - update LDM to 6.11.2" into omaha_13.4.1
Former-commit-id:2872e384ed
[formerlyf87951189b
] [formerly18a660f406
] [formerlye67819dbdc
[formerly18a660f406
[formerly a7a457820a74b1d9810b7e4112ede8885d5c7905]]] Former-commit-id:e67819dbdc
Former-commit-id: 7d426223034f342f4ac25cbbf0c848f9855d4778 [formerly2af1a197aa
] Former-commit-id:6e4fddd6c6
This commit is contained in:
commit
4207ca887a
75 changed files with 1253 additions and 970 deletions
608
nativeLib/decrypt_file/.cproject
Normal file
608
nativeLib/decrypt_file/.cproject
Normal file
|
@ -0,0 +1,608 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?>
|
||||
|
||||
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.1726302599">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.1726302599" moduleId="org.eclipse.cdt.core.settings" name="i386-pc-linux-gnu.release">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="Produces a 32-bit decrypt_file" id="cdt.managedbuild.config.gnu.exe.release.1726302599" name="i386-pc-linux-gnu.release" parent="cdt.managedbuild.config.gnu.exe.release">
|
||||
<folderInfo id="cdt.managedbuild.config.gnu.exe.release.1726302599." name="/" resourcePath="">
|
||||
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.release.896488161" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.release">
|
||||
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.release.1488367792" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.release"/>
|
||||
<builder buildPath="${workspace_loc:/decrypt_file/Release}" id="cdt.managedbuild.target.gnu.builder.exe.release.302007559" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.release"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.archiver.base.159950060" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.2060051765" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.release">
|
||||
<option id="gnu.cpp.compiler.exe.release.option.optimization.level.598404798" name="Optimization Level" superClass="gnu.cpp.compiler.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
|
||||
<option id="gnu.cpp.compiler.exe.release.option.debugging.level.747954349" name="Debug Level" superClass="gnu.cpp.compiler.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
|
||||
<option id="gnu.cpp.compiler.option.other.other.580310774" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0" valueType="string"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1610189555" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.release.521750950" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.release">
|
||||
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.exe.release.option.optimization.level.2029742981" name="Optimization Level" superClass="gnu.c.compiler.exe.release.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.exe.release.option.debugging.level.1132375723" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.option.misc.other.1977118561" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-c -fmessage-length=0 -m32" valueType="string"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1517135245" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.1611021867" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.release.366002084" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.release">
|
||||
<option id="gnu.cpp.link.option.flags.2025690636" superClass="gnu.cpp.link.option.flags" value="-m32" valueType="string"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1545704474" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
</inputType>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.release.128060262" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.release">
|
||||
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1334882287" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="makefileGenerator">
|
||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.1726302599;cdt.managedbuild.config.gnu.exe.release.1726302599.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.2060051765;cdt.managedbuild.tool.gnu.cpp.compiler.input.1610189555">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="makefileGenerator">
|
||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
</scannerConfigBuildInfo>
|
||||
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.1726302599;cdt.managedbuild.config.gnu.exe.release.1726302599.;cdt.managedbuild.tool.gnu.c.compiler.exe.release.521750950;cdt.managedbuild.tool.gnu.c.compiler.input.1517135245">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="makefileGenerator">
|
||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
</scannerConfigBuildInfo>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
||||
</cconfiguration>
|
||||
<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.1726302599.1113623045">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.1726302599.1113623045" moduleId="org.eclipse.cdt.core.settings" name="x86_64-linux-gnu.release">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="Produces a 64-bit decrypt_file" id="cdt.managedbuild.config.gnu.exe.release.1726302599.1113623045" name="x86_64-linux-gnu.release" parent="cdt.managedbuild.config.gnu.exe.release">
|
||||
<folderInfo id="cdt.managedbuild.config.gnu.exe.release.1726302599.1113623045." name="/" resourcePath="">
|
||||
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.release.1922483121" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.release">
|
||||
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.release.1838936007" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.release"/>
|
||||
<builder buildPath="${workspace_loc:/decrypt_file/Release}" id="cdt.managedbuild.target.gnu.builder.exe.release.502462364" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.release"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1329051252" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.581544220" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.release">
|
||||
<option id="gnu.cpp.compiler.exe.release.option.optimization.level.1152278610" name="Optimization Level" superClass="gnu.cpp.compiler.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
|
||||
<option id="gnu.cpp.compiler.exe.release.option.debugging.level.1580318529" name="Debug Level" superClass="gnu.cpp.compiler.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
|
||||
<option id="gnu.cpp.compiler.option.other.other.835871748" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0" valueType="string"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.894931344" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.release.500180100" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.release">
|
||||
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.exe.release.option.optimization.level.1662302487" name="Optimization Level" superClass="gnu.c.compiler.exe.release.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.exe.release.option.debugging.level.1208671985" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.option.misc.other.1415510630" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-c -fmessage-length=0 -m64" valueType="string"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1801104860" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.37481227" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.release.876175372" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.release">
|
||||
<option id="gnu.cpp.link.option.flags.1838726179" superClass="gnu.cpp.link.option.flags" value="-m64" valueType="string"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1596156272" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
</inputType>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.release.712228969" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.release">
|
||||
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.389779517" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="makefileGenerator">
|
||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.1726302599;cdt.managedbuild.config.gnu.exe.release.1726302599.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.2060051765;cdt.managedbuild.tool.gnu.cpp.compiler.input.1610189555">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="makefileGenerator">
|
||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
</scannerConfigBuildInfo>
|
||||
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.1726302599;cdt.managedbuild.config.gnu.exe.release.1726302599.;cdt.managedbuild.tool.gnu.c.compiler.exe.release.521750950;cdt.managedbuild.tool.gnu.c.compiler.input.1517135245">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="makefileGenerator">
|
||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||
<buildOutputProvider>
|
||||
<openAction enabled="true" filePath=""/>
|
||||
<parser enabled="true"/>
|
||||
</buildOutputProvider>
|
||||
<scannerInfoProvider id="specsFile">
|
||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||
<parser enabled="true"/>
|
||||
</scannerInfoProvider>
|
||||
</profile>
|
||||
</scannerConfigBuildInfo>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="decrypt_file.cdt.managedbuild.target.gnu.exe.382847340" name="Executable" projectType="cdt.managedbuild.target.gnu.exe"/>
|
||||
</storageModule>
|
||||
</cproject>
|
83
nativeLib/decrypt_file/.project
Normal file
83
nativeLib/decrypt_file/.project
Normal file
|
@ -0,0 +1,83 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>decrypt_file</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
|
||||
<triggers>clean,full,incremental,</triggers>
|
||||
<arguments>
|
||||
<dictionary>
|
||||
<key>?name?</key>
|
||||
<value></value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.append_environment</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
|
||||
<value>all</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.buildArguments</key>
|
||||
<value></value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.buildCommand</key>
|
||||
<value>make</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.buildLocation</key>
|
||||
<value>${workspace_loc:/decrypt_file/Release}</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
|
||||
<value>clean</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.contents</key>
|
||||
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
|
||||
<value>false</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
|
||||
<value>all</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.stopOnError</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
|
||||
<triggers>full,incremental,</triggers>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
<nature>org.eclipse.cdt.core.ccnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
5
nativeLib/decrypt_file/README.TXT
Normal file
5
nativeLib/decrypt_file/README.TXT
Normal file
|
@ -0,0 +1,5 @@
|
|||
To compile the file in decrypt_file, type the following at a command line
|
||||
and copy the resulting executable to the decoders folder in the
|
||||
LDM install:
|
||||
|
||||
cc -D_GNU_SOURCE -o decrypt_file decrypt_file.c
|
268
nativeLib/decrypt_file/decrypt_file.c
Normal file
268
nativeLib/decrypt_file/decrypt_file.c
Normal file
|
@ -0,0 +1,268 @@
|
|||
/* -----------------------------------------------------------------------------
|
||||
|
||||
File name:
|
||||
decrypt_file.c
|
||||
|
||||
Compilation:
|
||||
cc -D_GNU_SOURCE -o decrypt_file decrypt_file.c
|
||||
|
||||
Requirements:
|
||||
- cruft must be installed
|
||||
- the decryption key must be in ~/.key
|
||||
|
||||
File description:
|
||||
This program attempts to decrypt a stream of data that has been encrypted
|
||||
with cruft.
|
||||
|
||||
This program reads data from stdin. It assumes that there is some kind of
|
||||
header before the start of the cruft header that must be stripped, though
|
||||
it will still work if there is no header.
|
||||
|
||||
If the cruft header is not found within the first 128 bytes, then the input
|
||||
data is simply copied to the output file since decryption is not needed. If
|
||||
a cruft header is found, then the data is piped to cruft for decryption and
|
||||
is written to the file name matching the template specified on the command line.
|
||||
|
||||
This program takes one argument: the output file name template that is used
|
||||
by the mkstemp system call to open a file with a unique file name. The
|
||||
string (".XXXXXX") is appended by this program as required by mkstemp.
|
||||
|
||||
Any program looking for files to process that are output by this program
|
||||
should look at the file permissions before attempting a read. When this
|
||||
program has finished writing the output file, it will change permissions to
|
||||
0666.
|
||||
|
||||
Command line:
|
||||
decrypt_file <output_file_name>
|
||||
|
||||
Author:
|
||||
Brian M. Rapp 03/19/2009
|
||||
|
||||
----------------------------------------------------------------------------- */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#define MAX_BUF_SIZE 4096 // This must not be greater than PIPE_BUF
|
||||
// as defined in the kernel header file
|
||||
// /usr/src/linux/include/linux/limits.h
|
||||
|
||||
#define HDR_DEPTH 128 // The cruft header must occur within 128
|
||||
// bytes of the beginning of the file.
|
||||
|
||||
#define ENCRYPT_PROGRAM "cruft" // The code may require modification if
|
||||
// a different decryption tool is used.
|
||||
|
||||
#define INSERT_PROGRAM "pqinsert" // LDM tool to insert data into the product
|
||||
// queue
|
||||
|
||||
#define CRUFT_HDR_SIZE 9 // Cruft header length (see cruft_hdr below)
|
||||
#define SBN_HDR_SIZE 24 // Length of the SBN header
|
||||
#define WMO_HDR_SIZE 21 // Length of the WMO header (TTAAii CCCC DDHHMM\r\r\n)
|
||||
#define OPEN_FILE_PERMS (S_IRUSR | S_IWUSR)
|
||||
#define DONE_FILE_PERMS (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)
|
||||
#define DIR_PERMS 0777 // the permissions for the directories created
|
||||
#define DECRYPT_FLAG_OFFSET 5 // Offset to NWSTG CCB encryption flag
|
||||
|
||||
char *progname;
|
||||
char cruft_hdr[] = {253, 253, 253, 253, 253, 253, 253, 253, 253};
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
void usage (char *exename) {
|
||||
//fprintf (stderr, "Usage: %s output_file_path feed_type\n", exename); // no feed_type
|
||||
fprintf (stderr, "Usage: %s output_file_path \n", exename);
|
||||
}
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
int main (int argc, char **argv) {
|
||||
|
||||
char *out_template; // Input as the file name template from the command
|
||||
// line. This is modified by mkstemp to the output
|
||||
// file name.
|
||||
|
||||
int out_fd; // Output file descriptor returned by call to mkstemp
|
||||
FILE *out_pipe; // File pointer returned by call to popen for decryption
|
||||
size_t len; // Length of buffers read from STDIN
|
||||
size_t wlen; // Length of the write buffer
|
||||
size_t count; // Number of items written by calls to fwrite
|
||||
char file_buf[MAX_BUF_SIZE]; // Input buffer from STDIN
|
||||
char *hdr_ptr; // Pointer to start of cruft header within file_buf
|
||||
char command_line[128]; // Command line for starting cruft via popen
|
||||
char pqinsert_line[128]; // PQInsert Line
|
||||
char *sbn_hdr_ptr; // Pointer to the start of the 24-byte SBN header in each product
|
||||
char *slash_ptr; // pointer for the slashes in the path
|
||||
progname = argv[0]; // Get the program name
|
||||
|
||||
if (argc != 2) { // Only 1 parameter - the template for the output file name.
|
||||
usage (argv[0]);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
len = (size_t) strlen (argv[1]) + 7 + 1; // Allocate 7 extra bytes for the ".XXXXXX"
|
||||
// plus 1 for the terminating nul
|
||||
if ((out_template = malloc (len)) == NULL) { // Try to malloc memory for output file name
|
||||
fprintf (stderr, "%s: Error \"%s\" while allocating memory for output template -- exiting\n",
|
||||
progname, strerror (errno));
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
sprintf (out_template, "%s.XXXXXX", argv[1]); // Output file name template
|
||||
|
||||
// the reasons the DIR_PERMS are 777 is because of NFS permission issues with mkdir
|
||||
// make sure all of the intervening directories in out_template actually exist
|
||||
slash_ptr = strchr ( out_template, '/' );
|
||||
while ( slash_ptr != NULL )
|
||||
{
|
||||
*slash_ptr = '\0'; // truncate at the slash
|
||||
if ( strlen( out_template ) > 0 ) // corner case with a leading slash
|
||||
{
|
||||
if ( mkdir ( out_template, DIR_PERMS ) == - 1 && errno != EEXIST )
|
||||
{
|
||||
// it failed but not because the directory already exists
|
||||
fprintf ( stderr, "mkdir errno %d\n", errno );
|
||||
if ( errno == EPERM )
|
||||
{
|
||||
fprintf ( stderr, "mkdir permission error\n" );
|
||||
}
|
||||
exit (errno);
|
||||
}
|
||||
}
|
||||
*slash_ptr = '/'; // put the slash back
|
||||
++slash_ptr;
|
||||
slash_ptr = strchr ( slash_ptr, '/' ); // find the next slash
|
||||
}
|
||||
|
||||
if ((out_fd = mkstemp (out_template)) == -1) { // Create and open a unique temporary file for output
|
||||
fprintf (stderr, "%s: Error \"%s\" creating temporary file for template %s -- exiting\n",
|
||||
progname, strerror (errno), out_template);
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
// Try to read some data from STDIN
|
||||
if ((len = read (STDIN_FILENO, file_buf, MAX_BUF_SIZE)) < 0) { // Error if read return negative value -- clean up
|
||||
fprintf (stderr, "%s: Error \"%s\" reading from STDIN -- exiting\n",
|
||||
progname, strerror (errno));
|
||||
close (out_fd);
|
||||
unlink (out_template);
|
||||
exit (errno);
|
||||
} else if (len == 0) { // Input data stream is empty -- clean up
|
||||
fprintf (stderr, "%s: File is empty -- ignoring\n", progname);
|
||||
close (out_fd);
|
||||
unlink (out_template);
|
||||
exit (0);
|
||||
}
|
||||
|
||||
// If we're here, then we read some bytes from STDIN.
|
||||
// If the input buffer is less than 128 bytes, then only search through the number of bytes read
|
||||
if ((hdr_ptr = memmem (file_buf, (len < HDR_DEPTH) ? len : HDR_DEPTH, cruft_hdr, CRUFT_HDR_SIZE)) == NULL) {
|
||||
// then there is no cruft header within the first HDR_DEPTH bytes
|
||||
|
||||
if ((wlen = write (out_fd, file_buf, len)) != len) { // Try to write the input buffer to the output file
|
||||
fprintf (stderr, "%s: Error \"%s\" writing to %s -- exiting\n", progname, strerror (errno), out_template);
|
||||
close (out_fd);
|
||||
unlink (out_template);
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
// Read the rest of the input data and write it to the output file, exit on error
|
||||
while ((len = read (STDIN_FILENO, file_buf, MAX_BUF_SIZE)) > 0) {
|
||||
if ((wlen = write (out_fd, file_buf, len)) != len) {
|
||||
fprintf (stderr, "%s: Error \"%s\" writing to %s -- exiting\n", progname, strerror (errno), out_template);
|
||||
close (out_fd);
|
||||
unlink (out_template);
|
||||
exit (errno);
|
||||
}
|
||||
}
|
||||
|
||||
if (len < 0) { // Uh oh, there was an error reading from STDIN
|
||||
fprintf (stderr, "%s: Error \"%s\" reading from STDIN -- exiting\n",
|
||||
progname, strerror (errno));
|
||||
close (out_fd);
|
||||
unlink (out_template);
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
close (out_fd); // Close the output file
|
||||
} else { // Found a cruft header
|
||||
// Write the 24-byte SBN header to the output file before closing it. Cruft will append to this file.
|
||||
sbn_hdr_ptr = hdr_ptr - (WMO_HDR_SIZE + SBN_HDR_SIZE);
|
||||
|
||||
// Change compression flag from 'E' to 'U'
|
||||
if (file_buf[0] == 0x40) {
|
||||
if (file_buf[DECRYPT_FLAG_OFFSET] == 'E') {
|
||||
file_buf[DECRYPT_FLAG_OFFSET] = 'U';
|
||||
}
|
||||
}
|
||||
|
||||
if ((wlen = write (out_fd, sbn_hdr_ptr, SBN_HDR_SIZE)) != SBN_HDR_SIZE) {
|
||||
fprintf (stderr, "%s: Error \"%s\" writing SBN header to %s -- exiting\n", progname, strerror (errno), out_template);
|
||||
close (out_fd);
|
||||
unlink (out_template);
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
close (out_fd);
|
||||
|
||||
if (chmod (out_template, OPEN_FILE_PERMS) < 0) { // Set file perms to 0600 so cruft can write to it.
|
||||
fprintf (stderr, "%s: Error \"%s\" changing file permissions on %s to %od\n",
|
||||
progname, strerror (errno), out_template, DONE_FILE_PERMS);
|
||||
}
|
||||
|
||||
sprintf (command_line, "%s >> %s", ENCRYPT_PROGRAM, out_template); // Create pipe command line
|
||||
if ((out_pipe = popen (command_line, "w")) == NULL) { // Try to open pipe for output to cruft
|
||||
fprintf (stderr, "%s: Error \"%s\" while attempting to open pipe to %s -- exiting\n",
|
||||
progname, strerror (errno), command_line);
|
||||
unlink (out_template); // Clean up mess
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
wlen = file_buf + len - hdr_ptr; // Calculate the length of the output buffer from the start of the cruft header
|
||||
if ((count = fwrite (hdr_ptr, wlen, 1, out_pipe)) != 1) { // Try to pipe the output buffer to cruft
|
||||
fprintf (stderr, "%s: Error \"%s\" writing to output pipe -- only wrote %d items exiting\n",
|
||||
progname, strerror (errno), (int) count);
|
||||
fclose (out_pipe);
|
||||
unlink (out_template); // Clean up mess
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
while ((len = read (STDIN_FILENO, file_buf, MAX_BUF_SIZE)) > 0) {
|
||||
if ((count = fwrite (file_buf, len, 1, out_pipe)) != 1) {
|
||||
fprintf (stderr, "%s: Error \"%s\" writing to output pipe -- only wrote %d items exiting\n",
|
||||
progname, strerror (errno), (int) count);
|
||||
fclose (out_pipe);
|
||||
unlink (out_template); // Clean up mess
|
||||
exit (errno);
|
||||
}
|
||||
}
|
||||
|
||||
if (len < 0) { // Uh oh, there was an error reading from STDIN
|
||||
fprintf (stderr, "%s: Error \"%s\" reading from STDIN -- exiting\n", progname, strerror (errno));
|
||||
fclose (out_pipe);
|
||||
unlink (out_template); // Clean up the mess
|
||||
exit (errno);
|
||||
}
|
||||
|
||||
fclose (out_pipe);
|
||||
|
||||
sprintf(pqinsert_line, "%s %s", INSERT_PROGRAM, out_template);
|
||||
if((system(pqinsert_line)) > 0) {
|
||||
fprintf (stderr, "%s: Error \"%s\" running pqinsert -- file not inserted into data stream\n", progname, strerror (errno));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Change file permissions on output file to 0666 as a signal to anyone watching that the file is available for access now
|
||||
if (chmod (out_template, DONE_FILE_PERMS) < 0) {
|
||||
fprintf (stderr, "%s: Error \"%s\" changing file permissions on %s to %od\n", progname, strerror (errno), out_template, DONE_FILE_PERMS);
|
||||
}
|
||||
|
||||
exit (0);
|
||||
}
|
|
@ -1,13 +1,16 @@
|
|||
%define _ldm_version 6.11.2
|
||||
%define _ldm_src_tar awips2-ldm.%{_ldm_version}.tar.gz
|
||||
#
|
||||
# AWIPS II LDM Spec File
|
||||
#
|
||||
%define __prelink_undo_cmd %{nil}
|
||||
Name: awips2-ldm
|
||||
Summary: AWIPS II LDM Distribution
|
||||
Version: 6.8.1
|
||||
Release: 33
|
||||
Version: %{_ldm_version}
|
||||
Release: 1
|
||||
Group: AWIPSII
|
||||
BuildRoot: /tmp
|
||||
BuildArch: noarch
|
||||
URL: N/A
|
||||
License: N/A
|
||||
Distribution: N/A
|
||||
|
@ -15,6 +18,8 @@ Vendor: Raytheon
|
|||
Packager: Bryan Kowal
|
||||
|
||||
AutoReq: no
|
||||
Requires: qpid-cpp-client = 0.7.946106-28.el5.centos.1
|
||||
Requires: qpid-cpp-client-devel = 0.7.946106-28.el5.centos.1
|
||||
provides: awips2-ldm
|
||||
provides: awips2-base-component
|
||||
|
||||
|
@ -22,179 +27,167 @@ provides: awips2-base-component
|
|||
AWIPS II LDM Distribution - Contains AWIPS II LDM.
|
||||
|
||||
%prep
|
||||
# Verify That The User Has Specified A BuildRoot.
|
||||
if [ "${RPM_BUILD_ROOT}" = "/tmp" ]
|
||||
then
|
||||
echo "An Actual BuildRoot Must Be Specified. Use The --buildroot Parameter."
|
||||
echo "Unable To Continue ... Terminating"
|
||||
# Ensure that a "buildroot" has been specified.
|
||||
if [ "%{_build_root}" = "" ]; then
|
||||
echo "ERROR: A BuildRoot has not been specified."
|
||||
echo "FATAL: Unable to Continue ... Terminating."
|
||||
exit 1
|
||||
fi
|
||||
LDM_BUILD_DIR="/tmp/awips2-${USER}/ldm-build"
|
||||
LDM_TAR_DIR="rpms/awips2.core/Installer.ldm/src"
|
||||
LDM_TAR_FILE="ldm-6.8.1.tar.gz"
|
||||
|
||||
if [ -d ${RPM_BUILD_ROOT} ]; then
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
if [ -d %{_build_root} ]; then
|
||||
rm -rf %{_build_root}
|
||||
fi
|
||||
/bin/mkdir -p %{_build_root}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# create the ldm directory
|
||||
/bin/mkdir -p %{_build_root}/usr/local/ldm-%{_ldm_version}/SOURCES
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# create profile directory and ld directory
|
||||
/bin/mkdir -p %{_build_root}/etc/ld.so.conf.d
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/mkdir -p %{_build_root}/etc/profile.d
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
_ldm_destination=%{_build_root}/usr/local/ldm-%{_ldm_version}
|
||||
_ldm_destination_source=${_ldm_destination}/SOURCES
|
||||
|
||||
_NATIVELIB_PROJECTS=( 'edexBridge' 'decrypt_file' )
|
||||
_RPM_directory=%{_baseline_workspace}/rpms
|
||||
_Installer_ldm=${_RPM_directory}/awips2.core/Installer.ldm
|
||||
|
||||
# copy the ldm source to the ldm destination directory.
|
||||
/bin/cp ${_Installer_ldm}/src/%{_ldm_src_tar} ${_ldm_destination_source}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
# package nativelib projects
|
||||
pushd . > /dev/null 2>&1
|
||||
cd %{_baseline_workspace}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
for nativeProject in ${_NATIVELIB_PROJECTS[*]};
|
||||
do
|
||||
/bin/tar -cf ${nativeProject}.tar ${nativeProject}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
# move nativeLib to LDM SOURCES for post-installation
|
||||
# build.
|
||||
/bin/mv ${nativeProject}.tar \
|
||||
${_ldm_destination_source}/${nativeProject}.tar
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
if [ -d ${LDM_BUILD_DIR} ]; then
|
||||
rm -rf ${LDM_BUILD_DIR}
|
||||
fi
|
||||
mkdir -p ${LDM_BUILD_DIR}
|
||||
if [ -d ${RPM_BUILD_ROOT}/usr/local/ldm]; then
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
fi
|
||||
mkdir -p ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
# We cannot safely build ldm on a machine awips2-ldm
|
||||
# is already installed on.
|
||||
if rpm -q awips2-ldm
|
||||
then
|
||||
echo "ERROR: the awips2-ldm rpm must not be built"
|
||||
echo " on a machine with an awips2-ldm"
|
||||
echo " installation."
|
||||
echo "Unable To Continue ... Terminating."
|
||||
exit 1
|
||||
fi
|
||||
if [ -d /usr/local/ldm-6.8.1 ]; then
|
||||
rm -rf /usr/local/ldm-6.8.1
|
||||
fi
|
||||
mkdir -p /usr/local/ldm-6.8.1
|
||||
|
||||
# Copy the src to the build directory.
|
||||
cp %{_baseline_workspace}/${LDM_TAR_DIR}/${LDM_TAR_FILE} \
|
||||
${LDM_BUILD_DIR}
|
||||
# Copy patch0 to the build directory.
|
||||
cp %{_baseline_workspace}/${LDM_TAR_DIR}/ldm-6.8.1.patch0 \
|
||||
${LDM_BUILD_DIR}
|
||||
# Copy patch1 to the build directory.
|
||||
cp %{_baseline_workspace}/${LDM_TAR_DIR}/ldm-6.8.1.patch1 \
|
||||
${LDM_BUILD_DIR}
|
||||
# Copy patch2 to the build directory.
|
||||
cp %{_baseline_workspace}/${LDM_TAR_DIR}/ldm-6.8.1.patch2 \
|
||||
${LDM_BUILD_DIR}
|
||||
cd ${LDM_BUILD_DIR}
|
||||
tar -xvf ${LDM_TAR_FILE}
|
||||
# remove the copied tar file
|
||||
rm -f ${LDM_TAR_FILE}
|
||||
|
||||
cd ldm-6.8.1
|
||||
patch -p1 < ../ldm-6.8.1.patch0
|
||||
|
||||
# remove the patch file
|
||||
rm -f ../ldm-6.8.1.patch0
|
||||
|
||||
patch -p1 < ../ldm-6.8.1.patch1
|
||||
|
||||
# remove the patch file
|
||||
rm -f ../ldm-6.8.1.patch1
|
||||
|
||||
patch -p1 < ../ldm-6.8.1.patch2
|
||||
|
||||
# remove the patch file.
|
||||
rm -f ../ldm-6.8.1.patch2
|
||||
|
||||
%build
|
||||
LDM_BUILD_DIR="/tmp/awips2-${USER}/ldm-build"
|
||||
LDM_TAR_DIR="rpms/awips2.core/Installer.ldm/src"
|
||||
LDM_TAR_FILE="ldm-6.8.1.tar.gz"
|
||||
|
||||
# go to the ldm src directory.
|
||||
cd ${LDM_BUILD_DIR}/ldm-6.8.1/src
|
||||
# set LDMHOME
|
||||
export LDMHOME=/usr/local/ldm-6.8.1
|
||||
# run the configure script
|
||||
|
||||
./configure \
|
||||
--prefix=${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
RC="$?"
|
||||
if [ ! "${RC}" = "0" ]; then
|
||||
echo "ERROR: configure of ldm-6.8.1 has failed."
|
||||
echo "Unable To Continue ... Terminating."
|
||||
exit 1
|
||||
fi
|
||||
# make ldm
|
||||
make clean
|
||||
make
|
||||
RC="$?"
|
||||
if [ ! "${RC}" = "0" ]; then
|
||||
echo "ERROR: make of ldm-6.8.1 has failed."
|
||||
echo "Unable To Continue ... Terminating."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%install
|
||||
LDM_BUILD_DIR="/tmp/awips2-${USER}/ldm-build"
|
||||
|
||||
cd ${LDM_BUILD_DIR}/ldm-6.8.1/src
|
||||
make install
|
||||
RC="$?"
|
||||
if [ ! "${RC}" = "0" ]; then
|
||||
echo "ERROR: install of ldm-6.8.1 has failed."
|
||||
echo "Unable To Continue ... Terminating."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# copy the ldm src to the installation
|
||||
cd ${LDM_BUILD_DIR}/ldm-6.8.1
|
||||
cp -r src ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
|
||||
# remove the build directory.
|
||||
rm -rf ${LDM_BUILD_DIR}
|
||||
|
||||
# re-locate the etc directory in the install
|
||||
cd /usr/local/ldm-6.8.1
|
||||
mv etc ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1
|
||||
|
||||
# create links to the ldm directories
|
||||
cd ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1
|
||||
ln -s ldm-6.8.1 runtime
|
||||
ln -s runtime/bin bin
|
||||
ln -s runtime/include include
|
||||
ln -s runtime/lib lib
|
||||
ln -s runtime/man man
|
||||
ln -s runtime/src src
|
||||
|
||||
# create our standard directories
|
||||
mkdir .ssh
|
||||
touch .ssh/known_hosts
|
||||
mkdir data
|
||||
mkdir decoders
|
||||
mkdir logs
|
||||
|
||||
# create our ld.so.conf.d file.
|
||||
mkdir -p ${RPM_BUILD_ROOT}/etc/ld.so.conf.d
|
||||
touch ${RPM_BUILD_ROOT}/etc/ld.so.conf.d/awips2-i386.conf
|
||||
echo "/usr/local/ldm-6.8.1/lib" >> \
|
||||
${RPM_BUILD_ROOT}/etc/ld.so.conf.d/awips2-i386.conf
|
||||
|
||||
# install our "patches"
|
||||
PATCH_DIR="rpms/awips2.core/Installer.ldm/patch"
|
||||
# Copy the hidden files.
|
||||
hidden_files=( '.bash_profile' '.bashrc' '.cshrc' \
|
||||
'.lesshst' '.viminfo' )
|
||||
for hiddenFile in ${hidden_files[*]}; do
|
||||
cp %{_baseline_workspace}/${PATCH_DIR}/${hiddenFile} \
|
||||
${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1
|
||||
done
|
||||
# Copy the contents of the bin directory.
|
||||
cp -f %{_baseline_workspace}/${PATCH_DIR}/bin/* \
|
||||
${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/bin
|
||||
# Copy the contents of the decoder directory.
|
||||
cp %{_baseline_workspace}/${PATCH_DIR}/decoders/* \
|
||||
${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/decoders
|
||||
# Copy the contents of the lib directory.
|
||||
cp -P %{_baseline_workspace}/${PATCH_DIR}/lib/* \
|
||||
${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/lib
|
||||
# Copy the contents of the etc directory.
|
||||
cp -f %{_baseline_workspace}/${PATCH_DIR}/etc/* \
|
||||
${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/etc
|
||||
popd > /dev/null 2>&1
|
||||
|
||||
# copy ldm "patches" to SOURCES for post-installation
|
||||
# unpacking.
|
||||
cd ${_Installer_ldm}/patch
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
_PATCH_DIRS=( 'bin' 'decoders' 'etc' )
|
||||
for patchDir in ${_PATCH_DIRS[*]};
|
||||
do
|
||||
/bin/tar -cf ${patchDir}.tar ${patchDir}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/mv ${patchDir}.tar \
|
||||
${_ldm_destination_source}/${patchDir}.tar
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# copy environment scripts to their destination
|
||||
/bin/cp profile.d/* %{_build_root}/etc/profile.d
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/touch %{_build_root}/etc/ld.so.conf.d/awips2-ldm-noarch.conf
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
echo "/usr/local/ldm-%{_ldm_version}/lib" > \
|
||||
%{_build_root}/etc/ld.so.conf.d/awips2-ldm-noarch.conf
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
echo "/awips2/qpid/lib" >> \
|
||||
%{_build_root}/etc/ld.so.conf.d/awips2-ldm-noarch.conf
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%pre
|
||||
if [ -d /tmp/ldm ]; then
|
||||
rm -rf /tmp/ldm
|
||||
fi
|
||||
mkdir -p /tmp/ldm
|
||||
for dir in etc .ssh;
|
||||
do
|
||||
if [ -d /usr/local/ldm-%{_ldm_version}/${dir} ]; then
|
||||
scp -qrp /usr/local/ldm-%{_ldm_version}/${dir} /tmp/ldm
|
||||
fi
|
||||
done
|
||||
|
||||
%post
|
||||
_ldm_dir=/usr/local/ldm-%{_ldm_version}
|
||||
_ldm_root_dir=${_ldm_dir}/ldm-%{_ldm_version}
|
||||
|
||||
# Merge pqact.conf.dev and pqact.conf.template to create
|
||||
# our pqact.conf file.
|
||||
pushd . > /dev/null 2>&1
|
||||
cd ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/etc
|
||||
cd ${_ldm_dir}/SOURCES
|
||||
# unpack the ldm source
|
||||
/bin/tar -xf awips2-ldm.%{_ldm_version}.tar.gz \
|
||||
-C ${_ldm_dir}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
rm -f awips2-ldm.%{_ldm_version}.tar.gz
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
# unpack bin, decoders, and etc.
|
||||
_PATCH_DIRS=( 'bin' 'decoders' 'etc' )
|
||||
for patchDir in ${_PATCH_DIRS[*]};
|
||||
do
|
||||
/bin/tar -xf ${patchDir}.tar -C ${_ldm_dir}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/rm -f ${patchDir}.tar
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
/bin/chown -R ldm:fxalpha ${_ldm_dir}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
popd > /dev/null 2>&1
|
||||
|
||||
# construct pqact
|
||||
pushd . > /dev/null 2>&1
|
||||
cd ${_ldm_dir}/etc
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -f pqact.conf.template ]; then
|
||||
echo "ERROR: pqact.conf.template does not exist."
|
||||
exit 1
|
||||
|
@ -205,218 +198,171 @@ if [ ! -f pqact.conf.dev ]; then
|
|||
fi
|
||||
|
||||
cp pqact.conf.template pqact.conf
|
||||
RC=$?
|
||||
if [ ${RC} -ne 0 ]; then
|
||||
echo "ERROR: Unable to create the pqact.conf file."
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cat pqact.conf.dev >> pqact.conf
|
||||
RC=$?
|
||||
if [ ${RC} -ne 0 ]; then
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "ERROR: Unable to merge pqact.conf.dev and pqact.conf."
|
||||
exit 1
|
||||
fi
|
||||
popd > /dev/null 2>&1
|
||||
|
||||
# Move our profile.d script to its final location.
|
||||
mkdir -p ${RPM_BUILD_ROOT}/etc/profile.d
|
||||
cp %{_baseline_workspace}/${PATCH_DIR}/profile.d/awipsLDM.csh \
|
||||
${RPM_BUILD_ROOT}/etc/profile.d
|
||||
|
||||
%pre
|
||||
if [ -d /tmp/ldm ]; then
|
||||
rm -rf /tmp/ldm
|
||||
pushd . > /dev/null 2>&1
|
||||
# build ldm
|
||||
cd ${_ldm_root_dir}/src
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
mkdir -p /tmp/ldm
|
||||
for dir in etc .ssh;
|
||||
do
|
||||
if [ -d /usr/local/ldm-6.8.1/${dir} ]; then
|
||||
scp -qrp /usr/local/ldm-6.8.1/${dir} /tmp/ldm
|
||||
fi
|
||||
done
|
||||
|
||||
%post
|
||||
cd /usr/local/ldm-6.8.1/src
|
||||
export LDMHOME=/usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
./configure --prefix=/usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
make clean
|
||||
make
|
||||
make install_setuids
|
||||
RC="$?"
|
||||
if [ ! "${RC}" = "0" ]; then
|
||||
echo "WARNING: 'make install_setuids' has failed."
|
||||
su ldm -c "./configure --disable-max-size --with-noaaport --disable-root-actions" \
|
||||
> configure.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
su ldm -c "make install" > install.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
popd > /dev/null 2>&1
|
||||
pushd . > /dev/null 2>&1
|
||||
cd ${_ldm_root_dir}/src/noaaport
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
su ldm -c "/bin/bash my-make" > my-make.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
popd > /dev/null 2>&1
|
||||
pushd . > /dev/null 2>&1
|
||||
cd ${_ldm_root_dir}/src
|
||||
make root-actions > root-actions.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
popd > /dev/null 2>&1
|
||||
|
||||
# build decrypt_file & edexBridge
|
||||
pushd . > /dev/null 2>&1
|
||||
cd ${_ldm_dir}/SOURCES
|
||||
/bin/tar -xf decrypt_file.tar
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/tar -xf edexBridge.tar
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/rm -f *.tar
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/chown -R ldm:fxalpha ${_ldm_dir}/SOURCES
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cd decrypt_file
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
su ldm -c "gcc -D_GNU_SOURCE -o decrypt_file decrypt_file.c" > \
|
||||
decrypt_file.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/mv decrypt_file ${_ldm_dir}/decoders/decrypt_file
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cd ../edexBridge
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
su ldm -c "g++ edexBridge.cpp -I${_ldm_root_dir}/src/pqact \
|
||||
-I${_ldm_root_dir}/include \
|
||||
-I${_ldm_root_dir}/src \
|
||||
-I/usr/include/qpid \
|
||||
-L${_ldm_root_dir}/lib \
|
||||
-L%{_libdir} \
|
||||
-l ldm -l xml2 -l qpidclient -l qpidcommon -o edexBridge" > \
|
||||
edexBridge.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/mv edexBridge ${_ldm_dir}/bin/edexBridge
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cd ..
|
||||
|
||||
popd > /dev/null 2>&1
|
||||
|
||||
for dir in etc .ssh;
|
||||
do
|
||||
if [ -d /tmp/ldm/${dir} ]; then
|
||||
scp -qrp /tmp/ldm/${dir} /usr/local/ldm-6.8.1
|
||||
scp -qrp /tmp/ldm/${dir} /usr/local/ldm-%{_ldm_version}
|
||||
fi
|
||||
done
|
||||
|
||||
#if a remote CP site, copy over the filtered data configuration
|
||||
case $SITE_IDENTIFIER in gum|hfo|pbp|vrh)
|
||||
echo -e "\nInstalling ldmd.conf for $SITE_IDENTIFIER."
|
||||
if ! scp /usr/local/ldm-6.8.1/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn1:/usr/local/ldm/etc/ldmd.conf
|
||||
if ! scp /usr/local/ldm-%{_ldm_version}/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn1:/usr/local/ldm/etc/ldmd.conf
|
||||
then
|
||||
echo "ERROR: Failed copy of ldmd.conf to cpsbn1"
|
||||
fi
|
||||
|
||||
if ! scp /usr/local/ldm-6.8.1/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn2:/usr/local/ldm/etc/ldmd.conf
|
||||
if ! scp /usr/local/ldm-%{_ldm_version}/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn2:/usr/local/ldm/etc/ldmd.conf
|
||||
then
|
||||
echo "ERROR: Failed copy of ldmd.conf to cpsbn2"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
#remove the extra configuration files
|
||||
rm -f /usr/local/ldm-6.8.1/etc/ldmd.conf.*
|
||||
# remove the extra configuration files
|
||||
rm -f /usr/local/ldm-%{_ldm_version}/etc/ldmd.conf.*
|
||||
|
||||
/sbin/ldconfig
|
||||
|
||||
# create route-eth1, if it does not already exist.
|
||||
if [ ! -f /etc/sysconfig/network-scripts/route-eth1 ]; then
|
||||
_route_eth1=/etc/sysconfig/network-scripts/route-eth1
|
||||
|
||||
touch ${_route_eth1}
|
||||
echo "ADDRESS0=224.0.1.1" > ${_route_eth1}
|
||||
echo "NETMASK0=255.255.255.255" >> ${_route_eth1}
|
||||
echo "ADDRESS1=224.0.1.2" >> ${_route_eth1}
|
||||
echo "NETMASK1=255.255.255.255" >> ${_route_eth1}
|
||||
echo "ADDRESS2=224.0.1.3" >> ${_route_eth1}
|
||||
echo "NETMASK2=255.255.255.255" >> ${_route_eth1}
|
||||
echo "ADDRESS3=224.0.1.4" >> ${_route_eth1}
|
||||
echo "NETMASK3=255.255.255.255" >> ${_route_eth1}
|
||||
echo "ADDRESS4=224.0.1.5" >> ${_route_eth1}
|
||||
echo "NETMASK4=255.255.255.255" >> ${_route_eth1}
|
||||
|
||||
# restart networking
|
||||
/sbin/service network restart
|
||||
fi
|
||||
|
||||
rm -rf /tmp/ldm
|
||||
|
||||
# remove the ldm SOURCES directory
|
||||
/bin/rm -rf ${_ldm_dir}/SOURCES
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%preun
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
rm -rf /usr/local/ldm-6.8.1
|
||||
rm -rf /tmp/awips2-${USER}/ldm-build
|
||||
|
||||
%files
|
||||
%defattr(-,ldm,fxalpha,-)
|
||||
%attr(644,root,root) /etc/ld.so.conf.d/awips2-i386.conf
|
||||
%dir /usr/local/ldm-6.8.1
|
||||
/usr/local/ldm-6.8.1/.bash_profile
|
||||
/usr/local/ldm-6.8.1/.bashrc
|
||||
/usr/local/ldm-6.8.1/.cshrc
|
||||
/usr/local/ldm-6.8.1/.lesshst
|
||||
%dir /usr/local/ldm-6.8.1/.ssh
|
||||
%config(noreplace) /usr/local/ldm-6.8.1/.ssh/known_hosts
|
||||
/usr/local/ldm-6.8.1/.viminfo
|
||||
%dir /usr/local/ldm-%{_ldm_version}
|
||||
%dir /usr/local/ldm-%{_ldm_version}/SOURCES
|
||||
/usr/local/ldm-%{_ldm_version}/SOURCES/*
|
||||
|
||||
/usr/local/ldm-6.8.1/bin
|
||||
/usr/local/ldm-6.8.1/data
|
||||
%dir /usr/local/ldm-6.8.1/decoders
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/binaryWriter
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/binWriter
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/cruft
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/decrypt_file
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/keygen
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/metarWriter
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/purge.sh
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/textWriter
|
||||
/usr/local/ldm-6.8.1/etc
|
||||
/usr/local/ldm-6.8.1/include
|
||||
/usr/local/ldm-6.8.1/lib
|
||||
%dir /usr/local/ldm-6.8.1/logs
|
||||
/usr/local/ldm-6.8.1/man
|
||||
/usr/local/ldm-6.8.1/runtime
|
||||
/usr/local/ldm-6.8.1/src
|
||||
|
||||
%dir /usr/local/ldm-6.8.1/ldm-6.8.1
|
||||
%dir /usr/local/ldm-6.8.1/ldm-6.8.1/bin
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/afos
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ddplus
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/dds
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/edexBridge
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/feedme
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/feedtest
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/hds
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/hrs
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/hupsyslog
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ids
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmadmin
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmcheck
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmfail
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmping
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmsend
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/monitor_data_store.sh
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/netcheck
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/newlog
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/notifyme
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/plotMetrics
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pps
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqact
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqcat
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqcheck
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqcreate
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqexpire
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqing
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqinsert
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqmon
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqsend
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqsurf
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqutil
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/regex
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/rpc.ldmd
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/rtstats
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/scour
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/scriptconfig
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/syscheck
|
||||
/usr/local/ldm-6.8.1/ldm-6.8.1/include
|
||||
%dir /usr/local/ldm-6.8.1/ldm-6.8.1/lib
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_date_time.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_date_time.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_date_time.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_filesystem.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_filesystem.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_filesystem.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_iostreams.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_iostreams.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_iostreams.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_prg_exec_monitor.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_prg_exec_monitor.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_prg_exec_monitor.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_program_options.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_program_options.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_program_options.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_python.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_python.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_python.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_regex.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_regex.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_regex.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_serialization.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_serialization.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_serialization.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_signals.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_signals.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_signals.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_test_exec_monitor.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_test_exec_monitor.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_test_exec_monitor.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_thread.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_thread.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_thread.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_unit_test_framework.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_unit_test_framework.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_unit_test_framework.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_wserialization.so
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_wserialization.so.1.33.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_wserialization.so.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.a
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.so
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.so.4
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.so.4.0.0
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.a
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.so
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.so.4
|
||||
%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.so.4.0.0
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libldm.a
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidclient.so
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidclient.so.4
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidclient.so.4.0.0
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidcommon.so
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidcommon.so.4
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidcommon.so.4.0.0
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidmessaging.so
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidmessaging.so.3
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidmessaging.so.3.0.2
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidtypes.so
|
||||
%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidtypes.so.1
|
||||
%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidtypes.so.1.1.1
|
||||
%docdir /usr/local/ldm-6.8.1/ldm-6.8.1/man
|
||||
/usr/local/ldm-6.8.1/ldm-6.8.1/man
|
||||
/usr/local/ldm-6.8.1/ldm-6.8.1/src
|
||||
%attr(644,root,root) /etc/ld.so.conf.d/awips2-ldm-noarch.conf
|
||||
%attr(755,root,root) /etc/profile.d/awipsLDM.csh
|
||||
|
|
Binary file not shown.
|
@ -1,176 +0,0 @@
|
|||
|
||||
# $Id: scour.in,v 1.1.16.6.2.7 2009/07/16 19:27:13 steve Exp $
|
||||
# Deletes old data files.
|
||||
#
|
||||
# Recursively deletes files older than a specified number of days from a
|
||||
# specified set of directories. The directories, retention time in days,
|
||||
# and an optional shell filename pattern appear, separated by tab characters
|
||||
# one directory per line, in a configuration file named on the command line.
|
||||
#
|
||||
# If no files have been written under a directory since the last time scour was
|
||||
# run, it will skip deleting old files and log an error message instead.
|
||||
#
|
||||
# WARNING: scour follows symbolic links, so don't put symbolic links to
|
||||
# directories you don't want scoured under data directories.
|
||||
|
||||
PATH=/bin:/usr/bin
|
||||
CONFFILE=/usr/local/ldm/etc/scour.conf # default, if no args
|
||||
VERBOSEFLAG=
|
||||
DEBUGFLAG=
|
||||
ERRS=
|
||||
PROG=`basename $0`
|
||||
LOGGER="echo $PROG: "
|
||||
TZ=UTC0 export TZ
|
||||
LOG_LDM=local0
|
||||
|
||||
while [ "$1" != "" ]
|
||||
do
|
||||
case "$1" in
|
||||
-v)
|
||||
VERBOSEFLAG=1
|
||||
;;
|
||||
-x)
|
||||
DEBUGFLAG=1
|
||||
;;
|
||||
-l) # logs to syslogd
|
||||
LOGGER="logger -t $PROG -p $LOG_LDM.notice"
|
||||
;;
|
||||
-*)
|
||||
$LOGGER "unrecognized flag ($1)"
|
||||
ERRS=1
|
||||
;;
|
||||
*)
|
||||
if [ $# -ne 1 ]
|
||||
then
|
||||
$LOGGER "only 1 conf file argument permitted"
|
||||
ERRS=1
|
||||
fi
|
||||
CONFFILE=$1
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if [ "$ERRS" != "" ]
|
||||
then
|
||||
$LOGGER "usage: $PROG [-l] [-v] [-x] [config-file]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$VERBOSEFLAG" != "" ]
|
||||
then
|
||||
$LOGGER "Starting Up"
|
||||
fi
|
||||
|
||||
# Different find(1) utilities have different meanings for the "-mtime" argument.
|
||||
# Discover the meaning for the find(1) utility that will be used.
|
||||
#
|
||||
dayOffsetName=scour_$$
|
||||
trap 'rm -f /tmp/$dayOffsetName' EXIT
|
||||
if touch /tmp/$dayOffsetName; then
|
||||
sleep 2
|
||||
#
|
||||
# NOTE: OSF/1's find(1) utility doesn't conform to the Standard
|
||||
# because the CWD must be changed in order to get this test to work.
|
||||
#
|
||||
dir=`pwd`
|
||||
cd /tmp
|
||||
if find $dayOffsetName -mtime 0 |
|
||||
grep $dayOffsetName >/dev/null; then
|
||||
DAY_OFFSET=1
|
||||
elif find $dayOffsetName -mtime 1 |
|
||||
grep $dayOffsetName >/dev/null; then
|
||||
DAY_OFFSET=0
|
||||
else
|
||||
$LOGGER "Couldn't discover meaning of '-mtime' argument of find(1)"
|
||||
exit 1
|
||||
fi
|
||||
cd $dir
|
||||
rm /tmp/$dayOffsetName
|
||||
else
|
||||
$LOGGER "Couldn't create '-mtime' discovery-file /tmp/$dayOffsetName"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
while read dir age pattern; do
|
||||
if [ x$dir = x ] # ignore blank lines
|
||||
then
|
||||
continue
|
||||
fi
|
||||
|
||||
case $dir in
|
||||
\#*) # ignore comments
|
||||
continue
|
||||
;;
|
||||
*)
|
||||
if [ x$pattern = x ]
|
||||
then
|
||||
pattern="*"
|
||||
fi
|
||||
|
||||
# Convert directory specification to absolute pathname: follow symbolic
|
||||
# links (because find(1) doesn't) and perform tilde-expansion.
|
||||
#
|
||||
# NB: The statement
|
||||
# edir=`csh -f -c "cd $dir && /bin/pwd"`
|
||||
# causes the read(1) of the enclosing while-loop to return EOF if the
|
||||
# directory doesn't exist.
|
||||
#
|
||||
if edir=`echo "cd $dir && /bin/pwd" | csh -f`; then
|
||||
: true
|
||||
else
|
||||
$LOGGER "directory $dir does not exist, skipping"
|
||||
continue
|
||||
fi
|
||||
|
||||
if [ "$DEBUGFLAG" != "" ]
|
||||
then
|
||||
echo "dir=$dir age=$age pattern=$pattern edir=$edir"
|
||||
fi
|
||||
|
||||
(
|
||||
if cd $edir
|
||||
then
|
||||
# if either "$edir/.scour$pattern" doesn't exist yet OR
|
||||
# there are files newer than "$edir/.scour$pattern"
|
||||
# then
|
||||
# delete old files and create "$edir/.scour$pattern"
|
||||
# else
|
||||
# skip deletions and log message
|
||||
if [ ! -f ".scour$pattern" ] || \
|
||||
[ -n "`find . -newer \".scour$pattern\" 2>/dev/null | \
|
||||
head -1`" ]
|
||||
then
|
||||
FINDAGE=`echo $age $DAY_OFFSET - p|dc`
|
||||
if [ "$VERBOSEFLAG" != "" ]
|
||||
then
|
||||
BEFORE=`du -s . 2>/dev/null | \
|
||||
sed 's/^ *\([0-9]*\).*/\1/'`
|
||||
fi
|
||||
find . -type f -mtime +$FINDAGE -name "$pattern" -print \
|
||||
| sed 's/\([^\n]\)/\\\1/g' \
|
||||
| xargs rm -f && touch ".scour$pattern"
|
||||
if [ "$VERBOSEFLAG" != "" ]
|
||||
then
|
||||
AFTER=`du -s . 2>/dev/null | \
|
||||
sed 's/^ *\([0-9]*\).*/\1/'`
|
||||
# set DELETED to max(0, BEFORE - AFTER)
|
||||
DELETED=`echo $BEFORE $AFTER|\
|
||||
sed 's/\([0-9]*\) \([0-9]*\).*/b=\1;a=\2;d=0;if(a<b)d=b-a;d/'|\
|
||||
bc`
|
||||
$LOGGER "$DELETED blocks from $edir/$pattern (>" \
|
||||
"$age days old)"
|
||||
fi
|
||||
else
|
||||
$LOGGER "skipping, no recent files in $edir/$pattern"
|
||||
fi
|
||||
fi
|
||||
)
|
||||
;;
|
||||
esac
|
||||
done < $CONFFILE
|
||||
|
||||
if [ "$VERBOSEFLAG" != "" ]
|
||||
then
|
||||
$LOGGER exiting ...
|
||||
fi
|
Binary file not shown.
|
@ -5,7 +5,7 @@
|
|||
chomp($hostname = `hostname --fqdn`);
|
||||
|
||||
# The LDM home directory:
|
||||
$ldmhome = "/usr/local/ldm-6.8.1";
|
||||
$ldmhome = "/usr/local/ldm-6.11.2";
|
||||
|
||||
# Requested size, in bytes, of the data portion of the LDM product-queue. The
|
||||
# actual size might be slightly greater than the requested size for performance
|
||||
|
@ -145,7 +145,7 @@ $metrics_file = "$log_path/metrics.txt";
|
|||
|
||||
# The file-pattern for the metrics files to be plotted by the "plotmetrics"
|
||||
# command:
|
||||
$metrics_files = "/usr/local/ldm-6.8.1/logs/metrics.txt*";
|
||||
$metrics_files = "/usr/local/ldm-6.11.2/logs/metrics.txt*";
|
||||
|
||||
# The number of metrics-files that the "newmetrics" command should keep
|
||||
# around:
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
rpms/awips2.core/Installer.ldm/src/awips2-ldm.6.11.2.tar.gz
Normal file
BIN
rpms/awips2.core/Installer.ldm/src/awips2-ldm.6.11.2.tar.gz
Normal file
Binary file not shown.
|
@ -1,241 +0,0 @@
|
|||
diff -uNr ldm-6.8.1/src/pqact/filel.c ldm-6.8.1-patch0/src/pqact/filel.c
|
||||
--- ldm-6.8.1/src/pqact/filel.c 2008-09-17 11:35:18.000000000 -0500
|
||||
+++ ldm-6.8.1-patch0/src/pqact/filel.c 2011-02-22 12:31:58.000000000 -0600
|
||||
@@ -15,6 +15,7 @@
|
||||
#define PATH_MAX 255 /* _POSIX_PATH_MAX */
|
||||
#endif /* !PATH_MAX */
|
||||
#include <sys/types.h>
|
||||
+#include <sys/sem.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h> /* O_RDONLY et al */
|
||||
#include <unistd.h> /* access, lseek */
|
||||
@@ -44,6 +45,13 @@
|
||||
extern pqueue* pq;
|
||||
|
||||
static unsigned maxEntries = 0;
|
||||
+static int shared_id = -1;
|
||||
+static int sem_id = -1;
|
||||
+static unsigned shared_size;
|
||||
+static unsigned queue_counter = 0;
|
||||
+static unsigned largest_queue_element = 0;
|
||||
+static union semun semarg;
|
||||
+
|
||||
|
||||
/*
|
||||
* Defined in pqcat.c
|
||||
@@ -524,6 +532,9 @@
|
||||
}
|
||||
else if (0 == strncmp(*av,"-log",4)) {
|
||||
entry->flags |= FL_LOG;
|
||||
+ }
|
||||
+ else if (0 == strncmp(*av,"-edex",3)) {
|
||||
+ entry->flags |= FL_EDEX;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -707,6 +718,19 @@
|
||||
: entry->handle.fd , prodp->info.ident);
|
||||
|
||||
if (entry != NULL) {
|
||||
+ if(entry->flags & FL_EDEX) {
|
||||
+ if(shared_id == -1) {
|
||||
+ uerror("Notification specified but shared memory is not available.");
|
||||
+ }
|
||||
+ else {
|
||||
+ edex_message * queue = (edex_message *)shmat(shared_id, (void *)0, 0);
|
||||
+ strncpy(queue[queue_counter].filename, entry->path, 4096);
|
||||
+ strncpy(queue[queue_counter].ident, prodp->info.ident, 256);
|
||||
+ if(shmdt(queue) == -1) {
|
||||
+ uerror("Detaching shared memory failed.");
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
size_t sz = prodp->info.sz;
|
||||
void* data =
|
||||
(entry->flags & FL_STRIP)
|
||||
@@ -734,11 +758,23 @@
|
||||
|
||||
status = atFinishedArgs(argc, argv, entry);
|
||||
|
||||
- if ((status == 0) && (entry->flags & FL_LOG))
|
||||
+/* if ((status == 0) && (entry->flags & FL_LOG))
|
||||
unotice("Filed in \"%s\": %s",
|
||||
argv[argc-1],
|
||||
s_prod_info(NULL, 0, &prodp->info, ulogIsDebug()));
|
||||
} /* data written */
|
||||
+ if (status == 0) {
|
||||
+ if(entry->flags & FL_LOG)
|
||||
+ unotice("Filed in \"%s\": %s",
|
||||
+ argv[argc-1],
|
||||
+ s_prod_info(NULL, 0, &prodp->info, ulogIsDebug()));
|
||||
+ if(entry->flags & FL_EDEX && shared_id != -1) {
|
||||
+ semarg.val = queue_counter;
|
||||
+ int semreturn = semctl(sem_id, 1, SETVAL, semarg);
|
||||
+ queue_counter = (queue_counter == largest_queue_element) ? queue_counter = 0 : queue_counter + 1;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
|
||||
if (data != prodp->data)
|
||||
free(data);
|
||||
@@ -2289,6 +2325,30 @@
|
||||
return error;
|
||||
}
|
||||
|
||||
+int
|
||||
+set_shared_space(
|
||||
+ int shid,
|
||||
+ int semid,
|
||||
+ unsigned size)
|
||||
+{
|
||||
+ int error;
|
||||
+ if(shid == -1 || semid == -1) {
|
||||
+ uerror("Shared memory is not available. Notification system disabled.");
|
||||
+ error = -1;
|
||||
+ }
|
||||
+ else {
|
||||
+ shared_id = shid;
|
||||
+ sem_id = semid;
|
||||
+ shared_size = size;
|
||||
+ semarg.val = size;
|
||||
+ semctl(sem_id, 0, SETVAL, semarg);
|
||||
+ semarg.val = -1;
|
||||
+ semctl(sem_id, 1, SETVAL, semarg);
|
||||
+ largest_queue_element = shared_size - 1;
|
||||
+ error = 0;
|
||||
+ }
|
||||
+ return error;
|
||||
+}
|
||||
|
||||
/*
|
||||
* Returns the maximum number of file-descriptors that one process can have
|
||||
diff -uNr ldm-6.8.1/src/pqact/filel.h ldm-6.8.1-patch0/src/pqact/filel.h
|
||||
--- ldm-6.8.1/src/pqact/filel.h 2008-09-17 11:35:45.000000000 -0500
|
||||
+++ ldm-6.8.1-patch0/src/pqact/filel.h 2011-02-22 12:16:40.000000000 -0600
|
||||
@@ -19,6 +19,7 @@
|
||||
#define FL_LOG 64
|
||||
#define FL_METADATA 128 /* write data-product metadata */
|
||||
#define FL_NODATA 256 /* don't write data */
|
||||
+#define FL_EDEX 512 /* send message to memory segment */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -44,8 +45,23 @@
|
||||
extern void fl_close_all(void);
|
||||
extern void endpriv(void);
|
||||
extern int set_avail_fd_count(unsigned fdCount);
|
||||
+extern int set_shared_space(int shid, int semid, unsigned size);
|
||||
extern long openMax();
|
||||
|
||||
+struct edex_message {
|
||||
+ char filename[4096];
|
||||
+ char ident[256];
|
||||
+};
|
||||
+typedef struct edex_message edex_message;
|
||||
+
|
||||
+union semun {
|
||||
+ int val; /* Value for SETVAL */
|
||||
+ struct semid_ds *buf; /* Buffer for IPC_STAT, IPC_SET */
|
||||
+ unsigned short *array; /* Array for GETALL, SETALL */
|
||||
+ struct seminfo *__buf; /* Buffer for IPC_INFO
|
||||
+ (Linux specific) */
|
||||
+};
|
||||
+
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
diff -uNr ldm-6.8.1/src/pqact/pqact.c ldm-6.8.1-patch0/src/pqact/pqact.c
|
||||
--- ldm-6.8.1/src/pqact/pqact.c 2008-09-04 15:09:52.000000000 -0500
|
||||
+++ ldm-6.8.1-patch0/src/pqact/pqact.c 2011-02-22 12:39:21.000000000 -0600
|
||||
@@ -20,6 +20,9 @@
|
||||
#include <sys/time.h>
|
||||
#include <sys/types.h>
|
||||
#include <regex.h>
|
||||
+#include <sys/types.h>
|
||||
+#include <sys/ipc.h>
|
||||
+#include <sys/sem.h>
|
||||
#ifndef NO_WAITPID
|
||||
#include <sys/wait.h>
|
||||
#endif
|
||||
@@ -44,7 +47,10 @@
|
||||
|
||||
static volatile int hupped = 0;
|
||||
static char* conffilename = 0;
|
||||
-
|
||||
+static int shmid = -1;
|
||||
+static int semid = -1;
|
||||
+static key_t key;
|
||||
+static key_t semkey;
|
||||
timestampt oldestCursor;
|
||||
timestampt currentCursor;
|
||||
int currentCursorSet = 0;
|
||||
@@ -104,6 +110,15 @@
|
||||
/*EMPTY*/;
|
||||
}
|
||||
|
||||
+ if(shmid != -1) {
|
||||
+ unotice("Deleting shared segment.");
|
||||
+ shmctl(shmid, IPC_RMID, NULL);
|
||||
+ }
|
||||
+ if(semid != -1) {
|
||||
+ semctl(semid, 0, IPC_RMID);
|
||||
+ }
|
||||
+
|
||||
+
|
||||
(void)closeulog();
|
||||
}
|
||||
|
||||
@@ -203,6 +218,8 @@
|
||||
(void)fprintf(stderr,
|
||||
"\t-d datadir cd to \"datadir\" before interpreting filenames in\n");
|
||||
(void)fprintf(stderr,
|
||||
+ "\t-e EDEX! \n");
|
||||
+ (void)fprintf(stderr,
|
||||
"\t conffile (default %s)\n",
|
||||
DEFAULT_DATADIR);
|
||||
(void)fprintf(stderr,
|
||||
@@ -237,6 +254,7 @@
|
||||
prod_class_t clss;
|
||||
int toffset = TOFFSET_NONE;
|
||||
int loggingToStdErr = 0;
|
||||
+ unsigned queue_size = 5000;
|
||||
|
||||
conffilename = DEFAULT_CONFFILENAME;
|
||||
|
||||
@@ -278,7 +296,7 @@
|
||||
|
||||
opterr = 1;
|
||||
|
||||
- while ((ch = getopt(ac, av, "vxl:d:f:q:o:p:i:t:")) != EOF)
|
||||
+ while ((ch = getopt(ac, av, "vxel:d:f:q:o:p:i:t:")) != EOF)
|
||||
switch (ch) {
|
||||
case 'v':
|
||||
logmask |= LOG_UPTO(LOG_INFO);
|
||||
@@ -286,6 +304,12 @@
|
||||
case 'x':
|
||||
logmask |= LOG_MASK(LOG_DEBUG);
|
||||
break;
|
||||
+ case 'e':
|
||||
+ key = ftok("/etc/rc.d/rc.local",'R');
|
||||
+ semkey = ftok("/etc/rc.d/rc.local",'e');
|
||||
+ shmid = shmget(key, sizeof(edex_message) * queue_size, 0666 | IPC_CREAT);
|
||||
+ semid = semget(semkey, 2, 0666 | IPC_CREAT);
|
||||
+ break;
|
||||
case 'l':
|
||||
logfname = optarg;
|
||||
break;
|
||||
@@ -421,6 +445,14 @@
|
||||
}
|
||||
|
||||
/*
|
||||
+ * Inform the "filel" module of the shared memory segment
|
||||
+ */
|
||||
+ if (shmid != -1 && semid != -1)
|
||||
+ {
|
||||
+ set_shared_space(shmid, semid, queue_size);
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
* Compile the pattern.
|
||||
*/
|
||||
if (re_isPathological(spec.pattern))
|
|
@ -1,165 +0,0 @@
|
|||
diff -uNr ldm-6.8.1/src/pqact/filel.c ldm-6.8.1.patch1-dir/src/pqact/filel.c
|
||||
--- ldm-6.8.1/src/pqact/filel.c 2011-03-15 19:37:31.000000000 -0500
|
||||
+++ ldm-6.8.1.patch1-dir/src/pqact/filel.c 2011-03-15 19:42:54.000000000 -0500
|
||||
@@ -51,8 +51,6 @@
|
||||
static unsigned queue_counter = 0;
|
||||
static unsigned largest_queue_element = 0;
|
||||
static union semun semarg;
|
||||
-
|
||||
-
|
||||
/*
|
||||
* Defined in pqcat.c
|
||||
*/
|
||||
@@ -584,7 +582,7 @@
|
||||
strncpy(entry->path, path, PATH_MAX);
|
||||
entry->path[PATH_MAX-1] = 0; /* just in case */
|
||||
|
||||
- udebug(" unio_open: %d", entry->handle.fd);
|
||||
+ udebug(" unio_open: %d %s", entry->handle.fd, entry->path);
|
||||
} /* output-file set to close_on_exec */
|
||||
|
||||
if (error) {
|
||||
@@ -712,10 +710,10 @@
|
||||
int status = -1; /* failure */
|
||||
fl_entry* entry = get_fl_entry(UNIXIO, argc, argv);
|
||||
|
||||
- udebug(" unio_prodput: %d %s",
|
||||
+ udebug(" unio_prodput: %d",
|
||||
entry == NULL
|
||||
? -1
|
||||
- : entry->handle.fd , prodp->info.ident);
|
||||
+ : entry->handle.fd);
|
||||
|
||||
if (entry != NULL) {
|
||||
if(entry->flags & FL_EDEX) {
|
||||
@@ -751,7 +749,6 @@
|
||||
}
|
||||
|
||||
status = unio_put(entry, prodp->info.ident, data, sz);
|
||||
-
|
||||
if (status == 0) {
|
||||
if (entry->flags & FL_OVERWRITE)
|
||||
(void)ftruncate(entry->handle.fd, sz);
|
||||
@@ -774,13 +771,13 @@
|
||||
queue_counter = (queue_counter == largest_queue_element) ? queue_counter = 0 : queue_counter + 1;
|
||||
}
|
||||
}
|
||||
- }
|
||||
+ } /* data written */
|
||||
|
||||
if (data != prodp->data)
|
||||
free(data);
|
||||
} /* data != NULL */
|
||||
} /* entry != NULL */
|
||||
-
|
||||
+ udebug(" unio_prodput: complete for %s at location %s", prodp->info.ident, entry->path);
|
||||
return status;
|
||||
}
|
||||
|
||||
diff -uNr ldm-6.8.1/src/pqact/palt.c ldm-6.8.1.patch1-dir/src/pqact/palt.c
|
||||
--- ldm-6.8.1/src/pqact/palt.c 2009-01-06 14:44:09.000000000 -0600
|
||||
+++ ldm-6.8.1.patch1-dir/src/pqact/palt.c 2011-03-16 09:21:01.000000000 -0500
|
||||
@@ -552,6 +552,54 @@
|
||||
return epochTime;
|
||||
}
|
||||
|
||||
+static void
|
||||
+seq_sub(
|
||||
+ const char* istring, /* input string, possibly including
|
||||
+ indicators to be expanded */
|
||||
+ char* ostring, /* output string, with date indicators
|
||||
+ expanded */
|
||||
+ u_int seqnum) /* UTC-based product-time (might be "now") */
|
||||
+{
|
||||
+ static int seqfirst = 1; /* true only first time called */
|
||||
+ static regex_t seqprog; /* compiled regexp for date indicator */
|
||||
+ static regmatch_t seqpmatch[1]; /* substring matching information */
|
||||
+ const char* e2; /* pointer to last character of seq
|
||||
+ * indicator substring */
|
||||
+ const char* is; /* pointer to next input character */
|
||||
+ /*
|
||||
+ * Compile regular-expression on first call.
|
||||
+ */
|
||||
+ if (seqfirst) {
|
||||
+ static char seq_exp[] = "\\(seq\\)";
|
||||
+
|
||||
+ if (regcomp(&seqprog, seq_exp, REG_EXTENDED) != 0)
|
||||
+ serror("Bad regular expression or out of memory: %s", seq_exp);
|
||||
+ seqfirst = 0;
|
||||
+ }
|
||||
+
|
||||
+ for (is = istring; regexec(&seqprog, is, 1, seqpmatch, 0) == 0; is = e2) {
|
||||
+ /*
|
||||
+ * Process the next date indicator in "istring".
|
||||
+ */
|
||||
+ printf("%d, %d\n", seqpmatch[0].rm_so, seqpmatch[0].rm_eo);
|
||||
+ const char *const s0 = &is[seqpmatch[0].rm_so];
|
||||
+ /* start of entire substring match */
|
||||
+
|
||||
+ e2 = &is[seqpmatch[0].rm_eo]; /* points to last char of substring */
|
||||
+
|
||||
+ /*
|
||||
+ * Copy stuff before match.
|
||||
+ */
|
||||
+ {
|
||||
+ while (is < s0)
|
||||
+ *ostring++ = *is++;
|
||||
+ }
|
||||
+
|
||||
+ int printed = sprintf(ostring, "%d", seqnum);
|
||||
+ ostring+=printed;
|
||||
+ }
|
||||
+ (void)strcpy(ostring, is); /* copy rest of input to output */
|
||||
+}
|
||||
|
||||
/*
|
||||
from ldm3/dd_regexp.c,v 1.24 1991/03/02 17:32:08
|
||||
@@ -1005,6 +1053,7 @@
|
||||
|
||||
date_sub("(02:yyyy)-(02:mm)-(02:dd)", buf, may31);
|
||||
assert(strcmp(buf, "2007-05-02") == 0);
|
||||
+ seq_sub("/tmp/(seq).txt", buf, 1234);
|
||||
|
||||
exit(0);
|
||||
}
|
||||
@@ -1110,8 +1159,11 @@
|
||||
date_sub(buf2, buf1, prod->info.arrival.tv_sec);
|
||||
buf1[sizeof(buf1)-1] = 0;
|
||||
|
||||
+ seq_sub(buf2, buf1, prod->info.seqno);
|
||||
+ buf1[sizeof(buf1) -1] = 0;
|
||||
+
|
||||
if (ulogIsVerbose())
|
||||
- uinfo(" %s: %s", s_actiont(&pal->action), buf1);
|
||||
+ uinfo(" %s: %s and the ident is %s", s_actiont(&pal->action), buf1, prod->info.ident);
|
||||
|
||||
argc = tokenize(buf1, argv, ARRAYLEN(argv));
|
||||
|
||||
diff -uNr ldm-6.8.1/src/pqact/pqact.c ldm-6.8.1.patch1-dir/src/pqact/pqact.c
|
||||
--- ldm-6.8.1/src/pqact/pqact.c 2011-03-15 19:37:31.000000000 -0500
|
||||
+++ ldm-6.8.1.patch1-dir/src/pqact/pqact.c 2011-03-15 19:44:56.000000000 -0500
|
||||
@@ -118,7 +118,6 @@
|
||||
semctl(semid, 0, IPC_RMID);
|
||||
}
|
||||
|
||||
-
|
||||
(void)closeulog();
|
||||
}
|
||||
|
||||
@@ -218,8 +217,6 @@
|
||||
(void)fprintf(stderr,
|
||||
"\t-d datadir cd to \"datadir\" before interpreting filenames in\n");
|
||||
(void)fprintf(stderr,
|
||||
- "\t-e EDEX! \n");
|
||||
- (void)fprintf(stderr,
|
||||
"\t conffile (default %s)\n",
|
||||
DEFAULT_DATADIR);
|
||||
(void)fprintf(stderr,
|
||||
@@ -289,6 +286,7 @@
|
||||
extern int optind;
|
||||
extern int opterr;
|
||||
extern char *optarg;
|
||||
+
|
||||
int ch;
|
||||
int logmask = (LOG_MASK(LOG_ERR) | LOG_MASK(LOG_WARNING) |
|
||||
LOG_MASK(LOG_NOTICE));
|
|
@ -1,42 +0,0 @@
|
|||
diff -crB ldm-6.8.1/src/pqact/palt.c ldm-6.8.1-patch2/src/pqact/palt.c
|
||||
*** ldm-6.8.1/src/pqact/palt.c 2012-03-21 14:43:55.000000000 -0500
|
||||
--- ldm-6.8.1-patch2/src/pqact/palt.c 2012-03-21 14:48:12.000000000 -0500
|
||||
***************
|
||||
*** 1148,1153 ****
|
||||
--- 1148,1154 ----
|
||||
*/
|
||||
static char buf1[_POSIX_ARG_MAX];
|
||||
static char buf2[_POSIX_ARG_MAX];
|
||||
+ static char final_buf[_POSIX_ARG_MAX];
|
||||
static char* argv[1 + _POSIX_ARG_MAX/2];
|
||||
|
||||
regsub(pal, prod->info.ident, buf1);
|
||||
***************
|
||||
*** 1159,1171 ****
|
||||
date_sub(buf2, buf1, prod->info.arrival.tv_sec);
|
||||
buf1[sizeof(buf1)-1] = 0;
|
||||
|
||||
! seq_sub(buf2, buf1, prod->info.seqno);
|
||||
! buf1[sizeof(buf1) -1] = 0;
|
||||
|
||||
if (ulogIsVerbose())
|
||||
! uinfo(" %s: %s and the ident is %s", s_actiont(&pal->action), buf1, prod->info.ident);
|
||||
|
||||
! argc = tokenize(buf1, argv, ARRAYLEN(argv));
|
||||
|
||||
if (argc < ARRAYLEN(argv))
|
||||
{
|
||||
--- 1160,1172 ----
|
||||
date_sub(buf2, buf1, prod->info.arrival.tv_sec);
|
||||
buf1[sizeof(buf1)-1] = 0;
|
||||
|
||||
! seq_sub(buf1, final_buf, prod->info.seqno);
|
||||
! final_buf[sizeof(final_buf) -1] = 0;
|
||||
|
||||
if (ulogIsVerbose())
|
||||
! uinfo(" %s: %s and the ident is %s", s_actiont(&pal->action), final_buf, prod->info.ident);
|
||||
|
||||
! argc = tokenize(final_buf, argv, ARRAYLEN(argv));
|
||||
|
||||
if (argc < ARRAYLEN(argv))
|
||||
{
|
Binary file not shown.
|
@ -375,11 +375,6 @@ if [ "${1}" = "-qpid" ]; then
|
|||
fi
|
||||
|
||||
if [ "${1}" = "-ldm" ]; then
|
||||
# Ensure that the user has root privileges.
|
||||
if [ ! ${UID} = 0 ]; then
|
||||
echo "ERROR: You must have root privileges to build ldm."
|
||||
exit 1
|
||||
fi
|
||||
buildRPM "awips2-ldm"
|
||||
|
||||
exit 0
|
||||
|
|
|
@ -217,6 +217,7 @@ if [ "${1}" = "-full" ]; then
|
|||
buildRPM "awips2-python-shapely"
|
||||
buildRPM "awips2-postgres"
|
||||
buildRPM "awips2-pgadmin3"
|
||||
buildRPM "awips2-ldm"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
@ -257,7 +258,8 @@ if [ "${1}" = "-qpid" ]; then
|
|||
fi
|
||||
|
||||
if [ "${1}" = "-ldm" ]; then
|
||||
echo "INFO: AWIPS II currently does not support a 64-bit version of ldm."
|
||||
buildRPM "awips2-ldm"
|
||||
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue