Guest User

Untitled

a guest
Mar 3rd, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.30 KB | None | 0 0
  1. # Connect to LDAP server
  2. Net::LDAP.open(
  3. :host => @ldap_host,
  4. :base => "#{@basedn}",
  5. :auth => {:method => :simple, :username => "mail=#{@mboxadmin_username}@#{@domain}", :password => @mboxadmin_password }
  6. ) do |ldap|
  7. # Get users
  8. ldap.search(:filter => "objectclass=person") do |user|
  9. begin
  10. username = user.omulauthid
  11. puts "--Logging on to IMAP server as: mboxadmin:#{@mboxadmin_username}:#{username}--"
  12. imap = Net::IMAP.new(@imap_host)
  13. imap.authenticate("LOGIN", "mboxadmin:#{@mboxadmin_username}:#{username}", @mboxadmin_password)
  14. imap.select(@junk_folder)
  15. count = imap.responses["EXISTS"][0]
  16. if (count > 1)
  17. puts "#{username} has #{count} spam messages..."
  18. # Get each message for the current user
  19. num = 1
  20. for msg in imap.fetch(1..count, ["RFC822", "UID"])
  21. puts "=> Processing message ##{num}"
  22. #`echo "#{msg.attr['RFC822']}" > message-#{username}-#{msg.attr["UID"]}`
  23. num += 1
  24. end
  25. else
  26. puts "#{username} has no Junk E-mail"
  27. end
  28. rescue Net::IMAP::ByeResponseError
  29. imap = Net::IMAP.new(@imap_host)
  30. rescue Net::IMAP::NoResponseError
  31. puts "WARN: Cannot get #{username}'s mailbox"
  32. ensure
  33. imap.close
  34. end
  35. end
  36. end
Add Comment
Please, Sign In to add comment