@Override public Response onConnect(SMTPSession session) { // some kind of random cleanup process if (Math.random() > 0.99) { POP3BeforeSMTPHelper.removeExpiredIP(expireTime); } // Check if the ip is allowed to relay if (!session.isRelayingAllowed() && POP3BeforeSMTPHelper.isAuthorized(session.getRemoteAddress().getAddress().getHostAddress())) { session.setRelayingAllowed(true); } return null; }
/** * @see org.apache.james.smtpserver.protocol.ConnectHandler#onConnect(SMTPSession) */ public void onConnect(SMTPSession session) { // some kind of random cleanup process if (Math.random() > 0.99) { POP3BeforeSMTPHelper.removeExpiredIP(expireTime); } // Check if the ip is allowed to relay if (!session.isRelayingAllowed() && POP3BeforeSMTPHelper.isAuthorized(session.getRemoteIPAddress())) { session.setRelayingAllowed(true); } }
/** * @see org.apache.james.protocols.smtp.hook.AuthHook#doAuth(org.apache.james.protocols.smtp.SMTPSession, java.lang.String, java.lang.String) */ public HookResult doAuth(SMTPSession session, String username, String password) { if (users.test(username, password)) { session.setUser(username); session.setRelayingAllowed(true); return new HookResult(HookReturnCode.OK, "Authentication Successful"); } return new HookResult(HookReturnCode.DECLINED); } }
@Override public HookResult doAuth(SMTPSession session, String username, String password) { try { if (users.test(username, password)) { session.setUser(username); session.setRelayingAllowed(true); return HookResult.builder() .hookReturnCode(HookReturnCode.ok()) .smtpDescription("Authentication Successful") .build(); } } catch (UsersRepositoryException e) { LOGGER.info("Unable to access UsersRepository", e); } return HookResult.DECLINED; }