Versions in this module Expand all Collapse all v0 v0.1.7 May 10, 2023 v0.0.0 May 10, 2023 Changes in this version + const Broadcast + const Client + const Control + const ExtraSecond + const ImplUniv + const ImplXNTPD + const ImplXNTPDOld + const InfoErrorAuth + const InfoErrorFmt + const InfoErrorImpl + const InfoErrorNoData + const InfoErrorOkay + const InfoErrorReq + const InfoErrorUnknown5 + const InfoErrorUnknown6 + const MissingSecond + const NoWarning + const Private + const ReqAddTrap + const ReqAuthInfo + const ReqClrSysFlag + const ReqClrTrap + const ReqConfig + const ReqControlKey + const ReqDoDirtyHack + const ReqDontDirtyHack + const ReqGetClkBugInfo + const ReqGetClockInfo + const ReqGetCtlStats + const ReqGetKernel + const ReqGetLeapInfo + const ReqGetRestrict + const ReqHostnameAssocID + const ReqIOStats + const ReqIfReload + const ReqIfStats + const ReqLoopInfo + const ReqMemStats + const ReqMonGetList + const ReqMonGetList1 + const ReqMonitor + const ReqNoMonitor + const ReqPeerInfo + const ReqPeerList + const ReqPeerListSum + const ReqPeerStats + const ReqRequestKey + const ReqRereadKeys + const ReqResAddFlags + const ReqResSubFlags + const ReqResetPeer + const ReqResetStats + const ReqSetClkFudge + const ReqSetPrecision + const ReqSetSysFlag + const ReqSysInfo + const ReqSysStats + const ReqTimerStats + const ReqTraps + const ReqTrustKey + const ReqUnconfig + const ReqUnrestrict + const ReqUntrustKey + const Reserved + const Server + const SymmetricActive + const SymmetricPassive + const Unknown + var ErrBufferTooSmall = errors.New("buffer too small") + var ErrInvalidHeader = errors.New("invalid header data") + var ErrInvalidLeapIndicator = errors.New("leap indicator not valid") + var ErrInvalidMode = errors.New("mode not valid") + var ErrInvalidReferenceID = errors.New("reference ID contained non-ASCII characters") + var ErrInvalidRequestCode = errors.New("request code invalid") + var ErrInvalidResponse = errors.New("invalid response") + var ErrInvalidStratum = errors.New("stratum invalid") + var ErrInvalidVersion = errors.New("version number not valid") + func RegisterModule() + type AssociationMode uint8 + type Flags struct + LeapIndicator uint8 + MonList bool + RequestCode string + SkipGetTime bool + Verbose bool + Version uint8 + func (cfg *Flags) Help() string + func (cfg *Flags) Validate(args []string) error + type ImplNumber uint8 + func (num ImplNumber) MarshalJSON() ([]byte, error) + type InfoError uint8 + func (err InfoError) Error() string + func (err InfoError) MarshalJSON() ([]byte, error) + type LeapIndicator uint8 + type Module struct + func (module *Module) Description() string + func (module *Module) NewFlags() interface{} + func (module *Module) NewScanner() zgrab2.Scanner + type NTPHeader struct + LeapIndicator LeapIndicator + Mode AssociationMode + OriginTimestamp NTPLong + Poll int8 + Precision int8 + ReceiveTimestamp NTPLong + ReferenceID ReferenceID + ReferenceTimestamp NTPLong + RootDelay NTPShort + RootDispersion NTPShort + Stratum uint8 + TransmitTimestamp NTPLong + Version uint8 + func (header *NTPHeader) Encode() ([]byte, error) + func (header *NTPHeader) ValidateSyntax() error + type NTPLong struct + Fraction uint32 + Seconds uint32 + func (when *NTPLong) Decode(buf []byte) error + func (when *NTPLong) Encode() []byte + func (when *NTPLong) GetNanos() uint64 + func (when *NTPLong) GetTime() time.Time + func (when *NTPLong) SetNanos(nanos int) + func (when *NTPLong) SetTime(t time.Time) + type NTPShort struct + Fraction uint16 + Seconds uint16 + func (when *NTPShort) Decode(buf []byte) error + func (when *NTPShort) Encode() []byte + func (when *NTPShort) GetDuration() time.Duration + func (when *NTPShort) GetNanos() uint32 + func (when *NTPShort) SetDuration(d time.Duration) + func (when *NTPShort) SetNanos(nanos int) + type PrivatePacketHeader struct + Error InfoError + HasMore bool + ImplementationNumber ImplNumber + IsAuthenticated bool + IsResponse bool + ItemSize uint16 + MBZ uint8 + Mode AssociationMode + NumItems uint16 + RequestCode RequestCode + SequenceNumber uint8 + Version uint8 + func (header *PrivatePacketHeader) Encode() ([]byte, error) + type ReferenceID [4]byte + func (id ReferenceID) MarshalJSON() ([]byte, error) + type RequestCode uint8 + func (code RequestCode) MarshalJSON() ([]byte, error) + type Results struct + MonListHeader *PrivatePacketHeader + MonListResponse []byte + Time *time.Time + TimeResponse *NTPHeader + Version *uint8 + type Scanner struct + func (s *Scanner) Protocol() string + func (scanner *Scanner) GetName() string + func (scanner *Scanner) GetTime(sock net.Conn) (*NTPHeader, error) + func (scanner *Scanner) GetTrigger() string + func (scanner *Scanner) Init(flags zgrab2.ScanFlags) error + func (scanner *Scanner) InitPerSender(senderID int) error + func (scanner *Scanner) MonList(sock net.Conn, result *Results) (zgrab2.ScanStatus, error) + func (scanner *Scanner) Scan(t zgrab2.ScanTarget) (zgrab2.ScanStatus, interface{}, error) + func (scanner *Scanner) SendAndReceive(impl ImplNumber, req RequestCode, body []byte, sock net.Conn) (*PrivatePacketHeader, []byte, error)