summaryrefslogtreecommitdiff
path: root/pop3d.h
AgeCommit message (Collapse)Author
2014-09-05The sockaddr_storage returned by accept(2) belongs to session andSunil Nimmagadda
not the listener. Move it to a place where it belongs: struct session.
2014-08-31Merge refactor branch.Sunil Nimmagadda
2014-08-31Disengaging imsgev is tricky. First imsgev_clear as we know thereSunil Nimmagadda
isn't anything left to be written. Signal imsgev termination by setting iev->terminate = 1(Mind that we are setting it from with the callback). As imsgev would again callback dispatch with IMSGEV_DONE, we cannot free imsgev yet. So iev_maildrop need to exist beyond lifetime of session until IMSGEV_DONE. Allocating it seperately from session. imsgev_close is avoided as it schedules another EV_WRITE which is not needed in our case. This fixes a crash observed consistently with a little perl script to simulate concurrent sessions. Thanks MALLOC_OPTIONS='SFG<<'
2014-08-28Shorten.Sunil Nimmagadda
2014-08-27mtype, mpath are accessible to maildrop, simplify setup parameters.Sunil Nimmagadda
2014-08-27Rename to differentiate setup and init operations.Sunil Nimmagadda
2014-04-11Remove redundant sock member in session. io already holds the sock for each ↵Sunil Nimmagadda
session.
2014-04-10Since we now waitpid on WAIT_ANY, pop3_main needed return pid.Sunil Nimmagadda
2014-04-07Fix clang warnings. offset is always long.Sunil Nimmagadda
2014-04-01Merge branch 'refactor'Sunil Nimmagadda
2014-04-01Import.Sunil Nimmagadda
2014-04-01Simplify list_all handling. Send an imsg for each msg instead ofSunil Nimmagadda
consolidating into one imsg. We are no longer limited by MAX_IMSGSIZE. End of list is signalled by sending an imsg with hash as "" or sz as 0.
2014-03-27Import pop3d.Sunil Nimmagadda