{"record":{"id":"c8b5c27ef6df5936","repo":"ytti/oxidized","slug":"net-tftp-not-found-sudo-gem-install-net-tftp","errorCode":null,"errorMessage":"net/tftp not found: sudo gem install net-tftp","messagePattern":"net/tftp not found: sudo gem install net-tftp","errorType":"exception","errorClass":"OxidizedError","httpStatus":null,"severity":"error","filePath":"lib/oxidized/input/tftp.rb","lineNumber":6,"sourceCode":"module Oxidized\n  require 'stringio'\n  begin\n    require 'net/tftp'\n  rescue LoadError\n    raise OxidizedError, 'net/tftp not found: sudo gem install net-tftp'\n  end\n\n  class TFTP < Input\n    RESCUE_FAIL = {\n      Net::TFTPTimeout => :warn\n    }.freeze\n\n    def self.rescue_fail\n      super.merge(RESCUE_FAIL)\n    end\n\n    # TFTP utilizes UDP, there is not a connection. We simply specify an IP and send/receive data.\n    def connect(node)\n      @node = node\n\n      @node.model.cfg['tftp'].each { |cb| instance_exec(&cb) }\n      @tftp = Net::TFTP.new @node.ip\n    end","sourceCodeStart":1,"sourceCodeEnd":24,"githubUrl":"https://github.com/ytti/oxidized/blob/687ed4262d9d21e54662e872e2383386d8498f7b/lib/oxidized/input/tftp.rb#L1-L24","documentation":"Error \"net/tftp not found: sudo gem install net-tftp\" thrown in ytti/oxidized.","triggerScenarios":"Thrown at lib/oxidized/input/tftp.rb:6 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"687ed4262d9d21e54662e872e2383386d8498f7b","analyzedAt":"2026-08-23T11:19:42.084Z","schemaVersion":2},"datasetVersion":"2026-08-23T16:17:53.355Z"}