paho.mqtt.embedded-c
paho.mqtt.embedded-c copied to clipboard
SEGMENTATION FAULT in memcpy MQTTPacket.c
Hello,
I am using paho mqtt. When I cross-compile it for raspberry-pi cm3. When I try to publish some data I get a segmentation fault memcpy at line 198 of MQTTPacket.c
This is the GDB report that was generated
Thread 1 "AwsIot" received signal SIGSEGV, Segmentation fault.
memcpy () at ../sysdeps/arm/armv7/multiarch/memcpy_impl.S:608
608 ../sysdeps/arm/armv7/multiarch/memcpy_impl.S: No such file or directory.
(gdb) where
#0 memcpy () at ../sysdeps/arm/armv7/multiarch/memcpy_impl.S:608
#1 0x00409540 in writeMQTTString (pptr=pptr@entry=0x7effc4bc, mqttstring=...) at ../AwsIot/mqtt/MQTTPacket.c:198
#2 0x00409798 in MQTTSerialize_publish (buf=buf@entry=0x48c8d8 "0\"\217\320", buflen=buflen@entry=10340, dup=<optimized out>, qos=0, retained=retained@entry=0 '\000', packetid=2468, topicName=...,
payload=0x50c9c8 "{\"hello\":\"from qt\"}", payloadlen=19) at ../AwsIot/mqtt/MQTTSerializePublish.c:78
#3 0x00407f0c in MqttClient::sendMqPub_onEntry (this=0x48c8c0) at ../AwsIot/mqttclient.cpp:244
#4 0x0040a57c in MqttClient::qt_static_metacall (_o=0x48c8c0, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at moc_mqttclient.cpp:296
#5 0x7620350e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#6 0x7626fb26 in QAbstractState::entered(QAbstractState::QPrivateSignal) () from /usr/lib/libQt5Core.so.5
#7 0x7626fc60 in ?? () from /usr/lib/libQt5Core.so.5
#8 0x76268a58 in QStateMachinePrivate::enterStates(QEvent*, QList<QAbstractState*> const&, QList<QAbstractState*> const&, QSet<QAbstractState*> const&, QHash<QAbstractState*, QVector<QPropertyAssignment> >&, QList<QAbstractAnimation*> const&) () from /usr/lib/libQt5Core.so.5
#9 0x76269468 in QStateMachinePrivate::microstep(QEvent*, QList<QAbstractTransition*> const&, CalculationCache*) () from /usr/lib/libQt5Core.so.5
#10 0x76269670 in QStateMachinePrivate::_q_process() () from /usr/lib/libQt5Core.so.5
#11 0x76269d88 in QStateMachinePrivate::handleTransitionSignal(QObject*, int, void**) () from /usr/lib/libQt5Core.so.5
#12 0x7626bee2 in ?? () from /usr/lib/libQt5Core.so.5
#13 0x7620357e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#14 0x00407d1a in MqttClient::publishAnyData (this=this@entry=0x48c8c0, topic=..., payload=..., dup=0, packetId=packetId@entry=2468, qos=qos@entry=0, retain=0) at ../AwsIot/mqttclient.cpp:303
#15 0x0040a1d2 in MqttClient::qt_static_metacall (_o=_o@entry=0x48c8c0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=41, _a=_a@entry=0x7effca48)
at /opt/poky/2.7.1/sysroots/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/usr/include/QtCore/qrefcount.h:60
#16 0x0040aabe in MqttClient::qt_metacall (this=0x48c8c0, _c=QMetaObject::InvokeMetaMethod, _id=41, _a=0x7effca48) at moc_mqttclient.cpp:499
#17 0x767d258c in ?? () from /usr/lib/libQt5Qml.so.5
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Any advice on how I fix this issue?