Bug#820687: whitedune: conflicting declarations of mysnprintf to cause stack underflow

Michael Tautschnig mt at debian.org
Mon Apr 11 12:30:09 UTC 2016


Package: whitedune
Version: 0.30.10-2.1
Usertags: goto-cc

During a rebuild of all Debian packages in a clean sid chroot (using cowbuilder
and pbuilder) the build failed with the following error. Please note that we
use our research compiler tool-chain (using tools from the cbmc package), which
permits extended reporting on type inconsistencies at link time.

[...]
x86_64-linux-gnu-gcc -g  -I. -Iswt/include -Wdate-time  -I/usr/X11R6/include/ -I/usr/X11R6/LessTif/Motif1.2/include  -g -O0 -fstack-protector-strong -Wformat -Werror=format-security -I. -Iswt/include -Wdate-time  -I/usr/X11R6/include/ -I/usr/X11R6/LessTif/Motif1.2/include  -c -o resource.o resource.c
x86_64-linux-gnu-g++ main.o Scene.o SceneProtoMap.o Node.o MainWindow.o AboutDialog.o CommandList.o Element.o EventIn.o EventOut.o ExposedField.o Field.o FieldCommand.o MFieldCommand.o TUIElement.o Face.o FieldValue.o Image.o Interpolator.o Matrix.o Metadata.o MoveCommand.o NodeList.o Path.o Proto.o RouteCommand.o MyString.o UnRouteCommand.o Mesh.o SelectionCommand.o Quaternion.o RenderState.o SceneTreeView.o SceneGraphView.o Scene3DView.o SceneView.o FieldView.o FieldViewItem.o Util.o URL.o PanedWindow.o StatusBar.o ChannelView.o ToolbarWindow.o EulerAngles.o xerrorhandler.o x3dtranslators.o InputDevice.o TransformMode.o ColorCircle.o Aflock.o ScriptEdit.o Types.o Commandline.o NurbsArc.o NurbsCurveDegreeElevate.o NurbsSurfaceDegreeElevate.o NurbsMakeRevolvedSurface.o CheckBoxWindow.o GpsMathLib.o UsePhysicsEngine.o WonderlandModuleExport.o illegal2vrml.o  DuneApp.o PreferencesApp.o EcmaScriptApp.o StereoViewApp.o InputDeviceApp.o OutputApp.o RouteViewApp.o InputApp.o StartWithApp.o ExportNamesApp.o  Dialog.o ElevationGridDialog.o ScriptDialog.o NurbsCurveDialog.o NurbsPlaneDialog.o PreferencesDialog.o DefDialog.o CoverDefDialog.o Box2NurbsDialog.o Cone2NurbsDialog.o Cylinder2NurbsDialog.o Sphere2NurbsDialog.o NurbsCurve2NurbsSurfDialog.o InteractionDialog.o AnimationDialog.o URLDialog.o ArrayDialog.o FieldPipeDialog.o OneFloatDialog.o OneIntDialog.o OneTextDialog.o TwoRadioButtonsDialog.o EcmaScriptSettingsDialog.o PreviewSettingsDialog.o UploadSettingsDialog.o HelpSettingsDialog.o TexteditSettingsDialog.o StereoViewSettingsDialog.o OutputSettingsDialog.o InputSettingsDialog.o InputDeviceSettingsDialog.o AflockSettingsDialog.o RouteViewSettingsDialog.o WonderlandModuleExportDialog.o CattExportDialog.o SFBool.o SFBoolItem.o SFColor.o SFColorItem.o SFColorRGBA.o SFColorRGBAItem.o SFDouble.o SFDoubleItem.o SFFloat.o SFFloatItem.o SFImage.o SFImageItem.o SFInt32.o SFInt32Item.o SFMatrix3f.o SFMatrix3fItem.o SFMatrix4f.o SFMatrix4fItem.o SFNode.o SFNodeItem.o SFRotation.o SFRotationItem.o SFString.o SFStringItem.o SFTime.o SFTimeItem.o SFVec2f.o SFVec2fItem.o SFVec3f.o SFVec3fItem.o SFVec3d.o SFVec3dItem.o SFVec4f.o SFVec4fItem.o MFBool.o MFBoolItem.o MFColor.o MFColorItem.o MFColorRGBA.o MFColorRGBAItem.o MFDouble.o MFDoubleItem.o MFInt32.o MFInt32Item.o MFFloat.o MFFloatItem.o MFNode.o MFNodeItem.o MFRotation.o MFRotationItem.o MFString.o MFStringItem.o MFTime.o MFTimeItem.o MFVec2f.o MFVec2fItem.o MFVec3f.o MFVec3fItem.o MFVec3d.o MFVec3dItem.o MFVec4f.o MFVec4fItem.o MFMatrix3f.o MFMatrix3fItem.o MFMatrix4f.o MFMatrix4fItem.o BasicTransformNode.o TransformNode.o DynamicFieldsNode.o GeoNode.o GroupNode.o MeshBasedNode.o MeshMorphingNode.o ChainBasedNode.o EmitterNode.o GeometryNode.o IndexedTriangleSetNode.o X3DNBodyCollidableNode.o X3DNBodyCollisionSpaceNode.o X3DRigidJointNode.o AnchoredJointNode.o NodeAnchor.o NodeAppearance.o NodeAudioClip.o NodeArc2D.o NodeArcClose2D.o NodeBackground.o NodeBallJoint.o NodeBillboard.o NodeBooleanFilter.o NodeBooleanSequencer.o NodeBooleanToggle.o NodeBooleanTrigger.o NodeBoundedPhysicsModel.o NodeBox.o NodeCADAssembly.o NodeCADFace.o NodeCADLayer.o NodeCADPart.o NodeCircle2D.o NodeClipPlane.o NodeCollidableShape.o NodeCollidableOffset.o NodeCollision.o NodeCollisionCollection.o NodeCollisionSensor.o NodeCollisionSpace.o NodeColor.o NodeColorDamper.o NodeColorRGBA.o NodeColorInterpolator.o NodeComposedShader.o NodeComposedTexture3D.o NodeCone.o NodeConeEmitter.o NodeContact.o NodeContour2D.o NodeContourPolyline2D.o NodeCoordinate.o NodeCoordinateDamper.o NodeCoordinateDeformer.o NodeCoordinateDouble.o NodeCoordinateInterpolator.o NodeCoordinateInterpolator2D.o NodeCylinder.o NodeCylinderSensor.o NodeComposedCubeMapTexture.o NodeDISEntityManager.o NodeDISEntityTypeMapping.o NodeDirectionalLight.o NodeDisk2D.o NodeDoubleAxisHingeJoint.o NodeEaseInEaseOut.o NodeElevationGrid.o NodeEspduTransform.o NodeExplosionEmitter.o NodeExtrusion.o NodeFillProperties.o NodeFloatVertexAttribute.o NodeFog.o NodeFogCoordinate.o NodeFontStyle.o NodeForcePhysicsModel.o NodeGeoCoordinate.o NodeGeoElevationGrid.o NodeGeoMetadata.o NodeGeoLocation.o NodeGeoLOD.o NodeGeoPositionInterpolator.o NodeGeoProximitySensor.o NodeGeoOrigin.o NodeGeoTouchSensor.o NodeGeoTransform.o NodeGeoViewpoint.o NodeGeneratedCubeMapTexture.o NodeGravityPhysicsModel.o NodeGroup.o NodeHAnimDisplacer.o NodeHAnimHumanoid.o NodeHAnimJoint.o NodeHAnimSegment.o NodeHAnimSite.o NodeImageCubeMapTexture.o NodeImageTexture.o NodeImageTexture3D.o NodeIndexedFaceSet.o NodeIndexedLineSet.o NodeIndexedQuadSet.o NodeIndexedTriangleFanSet.o NodeIndexedTriangleSet.o NodeIndexedTriangleStripSet.o NodeInline.o NodeInlineLoadControl.o NodeIntegerSequencer.o NodeIntegerTrigger.o NodeKeySensor.o NodeLayer.o NodeLayerSet.o NodeLayout.o NodeLayoutGroup.o NodeLayoutLayer.o NodeLinePickSensor.o NodeLineProperties.o NodeLineSet.o NodeLoadSensor.o NodeLocalFog.o NodeLOD.o NodeMaterial.o NodeMatrix3VertexAttribute.o NodeMatrix4VertexAttribute.o NodeMetadataDouble.o NodeMetadataFloat.o NodeMetadataInteger.o NodeMetadataSet.o NodeMetadataString.o NodeMotorJoint.o NodeMovieTexture.o NodeMultiTexture.o NodeMultiTextureCoordinate.o NodeMultiTextureTransform.o NodeNavigationInfo.o NodeNormal.o NodeNormalInterpolator.o NodeNurbsCurve.o NodeNurbsCurve2D.o NodeNurbsGroup.o NodeNurbsOrientationInterpolator.o NodeNurbsPositionInterpolator.o NodeNurbsSet.o NodeNurbsSurface.o NodeNurbsSurfaceInterpolator.o NodeNurbsSweptSurface.o NodeNurbsSwungSurface.o NodeNurbsTextureCoordinate.o NodeNurbsTextureSurface.o NodeNurbsTrimmedSurface.o NodeOrientationChaser.o NodeOrientationDamper.o NodeOrientationInterpolator.o NodeOrthoViewpoint.o NodePackagedShader.o NodeParticleSystem.o NodePickableGroup.o NodePixelTexture.o NodePixelTexture3D.o NodePlaneSensor.o NodePointEmitter.o NodePointLight.o NodePointPickSensor.o NodePointSet.o NodePolyline2D.o NodePolylineEmitter.o NodePolypoint2D.o NodePositionChaser.o NodePositionChaser2D.o NodePositionDamper.o NodePositionDamper2D.o NodePositionInterpolator.o NodePositionInterpolator2D.o NodePrimitivePickSensor.o NodeProgramShader.o NodeProximitySensor.o NodeQuadSet.o NodeReceiverPdu.o NodeRectangle2D.o NodeRigidBody.o NodeRigidBodyCollection.o NodeScalarChaser.o NodeScalarInterpolator.o NodeScreenFontStyle.o NodeScreenGroup.o NodeScript.o NodeShaderPart.o NodeShaderProgram.o NodeShape.o NodeSignalPdu.o NodeSingleAxisHingeJoint.o NodeSliderJoint.o NodeSound.o NodeSphere.o NodeSphereSensor.o NodeSplinePositionInterpolator.o NodeSplinePositionInterpolator2D.o NodeSplineScalarInterpolator.o NodeSpotLight.o NodeSquadOrientationInterpolator.o NodeStaticGroup.o NodeStringSensor.o NodeSurfaceEmitter.o NodeSwitch.o NodeTexCoordDamper2D.o NodeTexCoordDamper.o NodeText.o NodeTextureBackground.o NodeTextureCoordinate.o NodeTextureCoordinate3D.o NodeTextureCoordinate4D.o NodeTextureCoordinateGenerator.o NodeTextureProperties.o NodeTextureTransform.o NodeTextureTransform3D.o NodeTextureTransformMatrix3D.o NodeTimeSensor.o NodeTimeTrigger.o NodeTouchSensor.o NodeTransform.o NodeTransformSensor.o NodeTransmitterPdu.o NodeTriangleFanSet.o NodeTriangleSet.o NodeTriangleSet2D.o NodeTriangleStripSet.o NodeTrimmedSurface.o NodeTwoSidedMaterial.o NodeUniversalJoint.o NodeViewpoint.o NodeViewpointGroup.o NodeViewport.o NodeVisibilitySensor.o NodeVolumeEmitter.o NodeVolumePickSensor.o NodeWindPhysicsModel.o NodeWorldInfo.o  NodeSuperEllipsoid.o NodeSuperShape.o NodeSuperRevolver.o NodeSuperExtrusion.o NodeVrmlCut.o NodeVrmlScene.o NodeOdeMotorJoint.o NodeOdeSingleAxisHingeJoint.o NodeOdeSliderJoint.o NodeCOVER.o NodeSpaceSensor.o NodeCubeTexture.o NodeWave.o NodeJoystickSensor.o NodeLabView.o NodeSteeringWheel.o NodeVehicle.o NodeARSensor.o NodeSky.o NodeTUIButton.o NodeTUIComboBox.o NodeTUIFloatSlider.o NodeTUIFrame.o NodeTUILabel.o NodeTUIListBox.o NodeTUIMap.o NodeTUIProgressBar.o NodeTUISlider.o NodeTUISplitter.o NodeTUITab.o NodeTUITabFolder.o NodeTUIToggleButton.o NodeVirtualAcoustics.o NodeVirtualSoundSource.o NodeBlendMode.o NodeGeneratedShadowMap.o NodeMatrixTransform.o NodeMultiGeneratedTextureCoordinate.o NodeKambiAppearance.o NodeKambiHeadLight.o NodeKambiInline.o NodeKambiNavigationInfo.o NodeKambiOctreeProperties.o NodeKambiTriangulation.o NodeProjectedTextureCoordinate.o NodeRenderedTexture.o NodeTeapot.o NodeText3D.o NodeCattExportRec.o NodeCattExportSrc.o NodeLdrawDatExport.o NodeComment.o NodeImport.o NodeExport.o parser.o lexer.o openglutfont.o jpegLoad.o pngLoad.o gif.o resource.o mysnprintf.o  -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -g -Lswt/lib -lswt -LSDLjoystick SDLjoystick/libSDLjoystick.a -lpng -ljpeg -lz -lexpat -lGLU -lGL -lXi -lXm -lXext -lXt -lXmu -lX11 -lm -ldl   -L/usr/local/lib  -L/usr/X11R6/LessTif/Motif1.2/lib  -o ../bin/dune

file linux/../../mysnprintf.h line 17: error: conflicting function declarations `mysnprintf'
old definition in module `mysnprintf' file mysnprintf.c line 870
signed int (char *str, unsigned long int count, const char *fmt, ...)
new definition in module `SDL_sysjoystick' file linux/../../mysnprintf.h line 17
signed int (char *, const unsigned int, const char *, ...)

Makefile:592: recipe for target '../bin/dune' failed
make[3]: *** [../bin/dune] Error 1
make[3]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-whitedune/whitedune-0.30.10/src'
Makefile:568: recipe for target 'target' failed
make[2]: *** [target] Error 2
make[2]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-whitedune/whitedune-0.30.10/src'
Makefile:5: recipe for target 'dune' failed
make[1]: *** [dune] Error 2
make[1]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-whitedune/whitedune-0.30.10'
debian/rules:39: recipe for target 'build-stamp' failed
make: *** [build-stamp] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2

The mismatch on the second parameter (unsigned long vs. const unsigned) will
necessarily cause stack underflow on any system where sizeof(long)!=sizeof(int)
as the implementation in mysnprintf.c will try to read sizeof(long) bytes when
only sizeof(int) bytes are passed.

Best,
Michael

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20160411/5eb296f3/attachment.sig>


More information about the pkg-multimedia-maintainers mailing list