Example #1
0
func recvLogs(c *conn.Conn, d *connData) (step, error) {
	var buf [8]byte
	binary.BigEndian.PutUint64(buf[:], d.n.lastSeen)
	_, err := c.Write(buf[:])
	if err != nil {
		return nil, err
	}
	if err = c.SendSig(); err != nil {
		return nil, err
	}
	d.n.lastSeen = uint64(time.Now().UnixNano())
	if err = gob.NewDecoder(c).Decode(&d.r); err != nil {
		return nil, err
	}
	for i := range d.r {
		d.r[i].nodeId = d.n.id
	}
	return sendJobs, c.CheckSig()
}
Example #2
0
func sendJobs(c *conn.Conn, d *connData) (step, error) {
	if err := gob.NewEncoder(c).Encode(d.n.jobs); err != nil {
		return nil, err
	}
	return recvBye, c.SendSig()
}