Skip to content
Snippets Groups Projects
Commit e2d6be67 authored by Richard T. Carback III's avatar Richard T. Carback III
Browse files

Merge branch 'garbledMessageLogging' into 'release'

Garbled message logging

See merge request !125
parents 82885c9d 0790daba
No related branches found
No related tags found
2 merge requests!170Release,!125Garbled message logging
...@@ -45,6 +45,7 @@ func (m *Manager) processGarbledMessages(stop *stoppable.Single) { ...@@ -45,6 +45,7 @@ func (m *Manager) processGarbledMessages(stop *stoppable.Single) {
stop.ToStopped() stop.ToStopped()
return return
case <-m.triggerGarbled: case <-m.triggerGarbled:
jww.INFO.Printf("[GARBLE] Checking Garbled messages")
m.handleGarbledMessages() m.handleGarbledMessages()
} }
} }
...@@ -59,7 +60,7 @@ func (m *Manager) handleGarbledMessages() { ...@@ -59,7 +60,7 @@ func (m *Manager) handleGarbledMessages() {
for grbldMsg, count, timestamp, has := garbledMsgs.Next(); has; grbldMsg, count, timestamp, has = garbledMsgs.Next() { for grbldMsg, count, timestamp, has := garbledMsgs.Next(); has; grbldMsg, count, timestamp, has = garbledMsgs.Next() {
//if it exists, check against all in the list //if it exists, check against all in the list
modifiedContents := append([]byte{0}, grbldMsg.GetContents()...) modifiedContents := append([]byte{0}, grbldMsg.GetContents()...)
identity := m.Session.GetUser().GetContact().ID identity := m.Session.GetUser().ReceptionID
_, forMe, _ := m.Session.GetEdge().Check(identity, grbldMsg.GetIdentityFP(), modifiedContents) _, forMe, _ := m.Session.GetEdge().Check(identity, grbldMsg.GetIdentityFP(), modifiedContents)
if forMe { if forMe {
fingerprint := grbldMsg.GetKeyFP() fingerprint := grbldMsg.GetKeyFP()
......
...@@ -72,9 +72,9 @@ func (m *Manager) handleMessage(ecrMsg format.Message, bundle Bundle, edge *edge ...@@ -72,9 +72,9 @@ func (m *Manager) handleMessage(ecrMsg format.Message, bundle Bundle, edge *edge
identity.Source, expectedFP, ecrMsg.GetIdentityFP()) identity.Source, expectedFP, ecrMsg.GetIdentityFP())
} }
im := fmt.Sprintf("Garbled/RAW Message: keyFP: %v, round: %d"+ im := fmt.Sprintf("Garbled/RAW Message: keyFP: %v, round: %d"+
"msgDigest: %s, not determined to be for client", msg.GetKeyFP(), bundle.Round, msg.Digest()) "msgDigest: %s, not determined to be for client", ecrMsg.GetKeyFP(), bundle.Round, ecrMsg.Digest())
m.Internal.Events.Report(1, "MessageReception", "Garbled", im) m.Internal.Events.Report(1, "MessageReception", "Garbled", im)
m.Session.GetGarbledMessages().Add(msg) m.Session.GetGarbledMessages().Add(ecrMsg)
return return
} }
......
...@@ -123,7 +123,7 @@ func sendCmixHelper(sender *gateway.Sender, msg format.Message, ...@@ -123,7 +123,7 @@ func sendCmixHelper(sender *gateway.Sender, msg format.Message,
jww.WARN.Printf("Best round on send is nil") jww.WARN.Printf("Best round on send is nil")
continue continue
} }
jww.DEBUG.Printf("[sendCMIX] bestRound: %v", bestRound) jww.TRACE.Printf("[sendCMIX] bestRound: %v", bestRound)
// add the round on to the list of attempted, so it is not tried again // add the round on to the list of attempted, so it is not tried again
attempted.Insert(bestRound.GetRoundId()) attempted.Insert(bestRound.GetRoundId())
...@@ -149,7 +149,7 @@ func sendCmixHelper(sender *gateway.Sender, msg format.Message, ...@@ -149,7 +149,7 @@ func sendCmixHelper(sender *gateway.Sender, msg format.Message,
continue continue
} }
jww.DEBUG.Printf("[sendCMIX] round %v processed, firstGW: %s", jww.TRACE.Printf("[sendCMIX] round %v processed, firstGW: %s",
bestRound, firstGateway) bestRound, firstGateway)
// Build the messages to send // Build the messages to send
...@@ -196,7 +196,7 @@ func sendCmixHelper(sender *gateway.Sender, msg format.Message, ...@@ -196,7 +196,7 @@ func sendCmixHelper(sender *gateway.Sender, msg format.Message,
} }
return result, err return result, err
} }
jww.DEBUG.Printf("[sendCMIX] sendToPreferred %s", firstGateway) jww.TRACE.Printf("[sendCMIX] sendToPreferred %s", firstGateway)
result, err := sender.SendToPreferred( result, err := sender.SendToPreferred(
[]*id.ID{firstGateway}, sendFunc, stop, cmixParams.SendTimeout) []*id.ID{firstGateway}, sendFunc, stop, cmixParams.SendTimeout)
jww.DEBUG.Printf("[sendCMIX] sendToPreferred %s returned", jww.DEBUG.Printf("[sendCMIX] sendToPreferred %s returned",
......
...@@ -159,8 +159,6 @@ func buildSlotMessage(msg format.Message, recipient *id.ID, target *id.ID, ...@@ -159,8 +159,6 @@ func buildSlotMessage(msg format.Message, recipient *id.ID, target *id.ID,
msg.SetIdentityFP(ifp) msg.SetIdentityFP(ifp)
jww.INFO.Printf("Sending to %s with preimage %v, ifp: %v", recipient, preimage, ifp)
// Encrypt the message // Encrypt the message
salt := make([]byte, 32) salt := make([]byte, 32)
_, err = stream.Read(salt) _, err = stream.Read(salt)
......
...@@ -114,6 +114,10 @@ func LoadMeteredCmixMessageBuffer(kv *versioned.KV, key string) (*MeteredCmixMes ...@@ -114,6 +114,10 @@ func LoadMeteredCmixMessageBuffer(kv *versioned.KV, key string) (*MeteredCmixMes
} }
func (mcmb *MeteredCmixMessageBuffer) Add(m format.Message) { func (mcmb *MeteredCmixMessageBuffer) Add(m format.Message) {
if m.GetPrimeByteLen()==0{
jww.FATAL.Panicf("Cannot handle a metered " +
"cmix message with a length of 0")
}
msg := meteredCmixMessage{ msg := meteredCmixMessage{
M: m.Marshal(), M: m.Marshal(),
Count: 0, Count: 0,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment