- Jul 29, 2016
-
-
Adam Wujek authored
adding uint8_t data_size; to struct snmp_oid does not change memory usage due to memory alignment. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
rename: fill -> get fill_tics -> get_tics fill_date -> get_date fill_asn -> get_value fill_struct_pp_asn -> get_pp fill_struct_p_asn -> get_p fill_int32_saturate -> get_i32sat fill_int32_saturate_pp -> get_i32sat_pp Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
By this 32bytes are saved. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
It will be possible to set via SNMP system name when SNMP SET is implemented. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Respond with SNMP_ERR_GENERR for versions never than 2. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Now all snmp walks should be possible Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Add object with wrpc's version. For example: WR-WRPC-MIB::wrWrpcMIB.3.1.0 = STRING: "wrpc-v3.0-161-g4d63c77-dirty" Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
WR-WRPC-MIB.txt is now for testing purposes, it will change. So far MIB contains following objects: WR-WRPC-MIB::wrpcPtpRTTHR.0 WR-WRPC-MIB::wrpcPtpDeltaMs.0 WR-WRPC-MIB::wrpcPtpCurSetpoint.0 WR-WRPC-MIB::wrpcNicTX.0 WR-WRPC-MIB::wrpcNicRX.0 Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Convert function fill_int32_saturate to take pointer to the data and asn. The interpretation of pointer in struct snmp_oid is done in fill_int32_saturate_pp. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
From now, struct snmp_oid contais the pointer (p) which is up to the callback function to know how to interpret the pointer. It is easier to handle **data and *data in declaration of the oid_array. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
From now function adding the data to snmp packet (fill_asn), just takes pointer to the data and asn type. Interpretation of a pointer in struct snmp_oid is now up to the callback function. It makes easier to handle different data types. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
objects: --oid_wrpcNicTX --oid_wrpcNicRX Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
add: --oid_wrsPtpServoState --oid_wrsPtpServoStateN --oid_wrsPtpClockOffsetPsHR --oid_wrsPtpSkew --oid_wrpcPtpRTTHR --oid_wrpcPtpDeltaMs --oid_wrpcPtpCurSetpoint Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Used to convert 64bit to 32bit. It is better to saturate 32bit during conversion than just passing 32 LSB bits. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
snmp_get_next works only when requesting oid is valid. Otherwise it fails to find next entry. Due to the above the snmpwalk works only when the walk is started from the existing oid. Since snmp walk scans only oids in the current branch, there was a need to create a special oid .1.3. $ snmpwalk -On -c public -v 1 192.168.1.20 1.3 .1.3.6.1.2.1.1.5.0 = STRING: "wrc" .1.3.6.1.2.1.25.1.1.0 = Timeticks: (792773) 2:12:07.73 .1.3.6.1.2.1.25.1.2.0 = Hex-STRING: 07 B2 00 01 05 00 00 00 .1.3.6.1.4.1.96.100.7.5.1.15.1 = Counter32: 445 .1.3.6.1.4.1.96.100.7.5.1.16.1 = INTEGER: 10 .1.3.6.1.4.1.96.100.7.5.1.17.1 = INTEGER: 174810 .1.3.6.1.4.1.96.100.7.5.1.18.1 = INTEGER: 191115 .1.3.6.1.4.1.96.100.7.5.1.19.1 = INTEGER: 157655 Timeout: No Response from 192.168.1.20 NOTE: Timeout message appears becasue there is no responce from node when wrong packet is sent. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Move SNMP just after syslog. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
--add defines of ASN types --add 5 object from wrsPtpTable Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
The "community" string is public. We have tree items only: the host name, the date and uptime. The code is designed to make it simple any addition. But we only have snmpget support, not snmpwak (i.e. "get next" query). This is run on an host build (CONFIG_HOST_PROCESS) where the time and date are not related to the real world: # snmpget -v 1 -c public 192.168.16.1 .1.3.6.1.2.1.1.5.0 SNMPv2-MIB::sysName.0 = STRING: wrc # snmpget -v 1 -c public 192.168.16.1 .1.3.6.1.2.1.25.1.2.0 HOST-RESOURCES-MIB::hrSystemDate.0 = STRING: 1970-0-1,19:52:34.0 # snmpget -v 1 -c public 192.168.16.1 .1.3.6.1.2.1.25.1.2.0 HOST-RESOURCES-MIB::hrSystemDate.0 = STRING: 1970-0-1,19:53:2.0 # snmpget -v 1 -c public 192.168.16.1 .1.3.6.1.2.1.25.1.1.0 [...] hrSystemUptime.0 = Timeticks: (94193300) 10 days, 21:38:53.00 Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
/var/lib/mibs/ietf/SNMPv2-TC DateAndTime ::= TEXTUAL-CONVENTION DISPLAY-HINT "2d-1d-1d,1d:1d:1d.1d,1a1d:1d" STATUS current DESCRIPTION "A date-time specification. field octets contents range ----- ------ -------- ----- 1 1-2 year* 0..65536 2 3 month 1..12 3 4 day 1..31 4 5 hour 0..23 5 6 minutes 0..59 6 7 seconds 0..60 (use 60 for leap-second) 7 8 deci-seconds 0..9 8 9 direction from UTC '+' / '-' 9 10 hours from UTC* 0..13 10 11 minutes from UTC 0..59 * Notes: - the value of year is in network-byte order - daylight saving time in New Zealand is +13 For example, Tuesday May 26, 1992 at 1:30:15 PM EDT would be displayed as: 1992-5-26,13:30:15.0,-4:0 Note that if only local time is known, then timezone information (fields 8-10) is not present." SYNTAX OCTET STRING (SIZE (8 | 11)) Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Jun 10, 2016
-
-
Adam Wujek authored
Additionally use type checking Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- May 20, 2016
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
(one is just a comment update: most of that stanza was not true any more) Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
A WR socket registers using a specific mac address and the receiving code uses the mac address to match the frame. This is going to be a problem with the new PTP code, as pdelay frames use a different mcast mac address. Moreover, if we go to UDP, stuff gets worse. Packet filter rules are already in place for the new mac addresses, and we now need to relax the checking in the software stack. As a side effect, we avoid a number of broadcast frames, because wrpc-sw now replies to unicast ARP requests. What happened before: 16:27:07 00:0b:ab:7c:8e:4a > 00:26:7b:00:04:18 who-has ...107 tell ...200 16:27:08 00:0b:ab:7c:8e:4a > 00:26:7b:00:04:18 who-has ...107 tell ...200 16:27:09 00:0b:ab:7c:8e:4a > 00:26:7b:00:04:18 who-has ...107 tell ...200 16:27:12 00:0b:ab:7c:8e:4a > ff:ff:ff:ff:ff:ff who-has ...107 tell ...200 16:27:12 00:26:7b:00:04:18 > 00:0b:ab:7c:8e:4a ...107 is-at 00:26:7b:00:04:18 what happens now: 16:42:27 00:0b:ab:7c:8e:4a > 00:26:7b:00:04:18 who-has ...107 tell ...200 16:42:27 00:26:7b:00:04:18 > 00:0b:ab:7c:8e:4a ...107 is-at 00:26:7b:00:04:18 Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This is incompatible with the previous implementation - sequence number is 32 bits - frames are 1,2,3 not 0,1,2 (so to be *more* incompatible) - no fake latency values are printed if frames are lost - the message is one line instead of two, and cleaner too - the sender reminds it's sending every 10s. The receiver's messages now include the sequence number, so we can match different receivers on a network. Also, The sender's message report both TAI and sequence, so we can related frames to the time of day. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- May 18, 2016
-
-
Alessandro Rubini authored
This adds a tool to check the latency in the network. It is selected at build time (config) time. If you select CONFIG_LATENCY_PROBE you are then asked for a CONFIG_LATENCY_ETHTYPE. The sender node sends three frames, as broadcast in that ethertype within the current vlan (or no vlan). The first frame is at priority 7, the second at priority 6, and the third includes the egress timestamps for the former ones. Each group has a sequence number and group identifier. If the tool is built in wrc.bin, every node acts as a receiver. To enable a sender issuing the set of frames every 5 seconds, use "ltest 5". To disable use "ltest 0". The receiver prints the measured latency, and warns if it receives frames that are not in the proper order, using the sequence and frame type fields. This is a successful run crossing two wr switches: latency prio7: 5142.775 latency prio6: 4998.775 latency prio7: 4822.773 latency prio6: 5142.773 latency prio7: 5142.771 latency prio6: 5286.771 Later on, we'll make the thing less verbose, and we'll have threshold to signal a problem if the network went slow. Currently we just print all collected data. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This is used by the latency measurement, to send high-priority frames Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Apr 04, 2016
-
-
Alessandro Rubini authored
Although we love to build-test stuff and discard at link time, as soon as we move tasks to be sections, we need to avoid building the file of the task if not configured in. This means lib/arp.c and lib/ipv4.c. But, for consistency, avoid building icmp.c and bootp.c as well. The alternative, which is ifconfig'ing the task itself results in warnings like "'ipv4_init' defined but not used". Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-