meillo@0: % chaos seminar talk about masqmail meillo@0: % meillo@0: % markus schnalke meillo@0: % since 2009-02-24 meillo@0: meillo@0: meillo@0: \documentclass{beamer} meillo@0: meillo@0: \title{masqmail} meillo@0: \author{markus schnalke} meillo@0: \date{2009-03-09} meillo@0: meillo@0: \usepackage[utf8]{inputenc} meillo@0: \usepackage{url} meillo@0: \usepackage{graphicx} meillo@0: \setlength{\parskip}{2.0ex plus 1.0ex minus 0.5ex} meillo@0: meillo@0: \newcommand{\secframe}[1]{ meillo@0: \section{#1} meillo@0: \frame{ \vfill\vfill \centerline{ \huge #1 } \vfill } meillo@0: } meillo@0: meillo@0: \newcommand{\ft}[1]{ meillo@0: \frametitle{#1} meillo@0: } meillo@0: meillo@1: \newcommand{\oneline}[1]{ meillo@1: \frame{ meillo@1: \vfill\vfill meillo@1: \centerline{\textbf{#1}} meillo@1: \vfill meillo@1: } meillo@1: } meillo@1: meillo@1: meillo@0: meillo@0: \begin{document} meillo@0: meillo@0: meillo@0: \frame{ meillo@0: meillo@0: \vspace{8em} meillo@0: \begin{center} meillo@0: meillo@0: {\huge\bf masqmail} meillo@0: meillo@0: a mail transfer agent for workstations and small networks meillo@0: meillo@0: \vspace{6em} meillo@0: meillo@0: { \tiny meillo@0: markus schnalke \textless{}meillo@marmaro.de\textgreater{} meillo@0: } meillo@0: meillo@0: \end{center} meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: \frame{ \ft{overview} meillo@0: meillo@0: 1) about me meillo@0: meillo@0: 2) about masqmail meillo@0: meillo@0: 3) short explanation of my thesis meillo@0: meillo@0: 4) further development of masqmail meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: \secframe{about me} meillo@0: meillo@0: meillo@0: \frame{\ft{markus schnalke} meillo@0: meillo@0: studied Business Information Systems meillo@0: meillo@0: at University of Applied Sciences, Ulm meillo@0: meillo@0: diploma thesis about masqmail meillo@0: meillo@1: now Master studies at University, Ulm meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{\ft{I am interested in} meillo@0: meillo@0: Free Software meillo@0: meillo@0: Debian meillo@0: meillo@0: suckless software meillo@0: meillo@0: the Unix Philosophy meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: \secframe{about masqmail} meillo@0: meillo@0: meillo@0: meillo@0: \frame{ \ft{what is masqmail} meillo@0: meillo@0: a Mail Transfer Agent (MTA) meillo@0: meillo@1: a small one meillo@0: meillo@1: and one for special setups meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{ \ft{masqmail's niche} meillo@0: meillo@0: non-permanent online connections meillo@0: meillo@0: over multiple providers meillo@0: meillo@1: especially for workstations and small networks meillo@1: meillo@1: also notebooks (maybe the largest market) meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{ \ft{history} meillo@0: meillo@0: written by Oliver Kurth meillo@0: meillo@0: between 1999 and 2003 meillo@0: meillo@1: most likely: meillo@0: meillo@1: - to manage masqdialer-controlled ISDN connections meillo@1: meillo@1: - source of the name (``masq\dots'') meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{ \ft{masqmail today} meillo@0: meillo@0: development stopped in 2003 meillo@0: meillo@0: not maintained meillo@0: meillo@0: even its website is down meillo@0: meillo@1: but included in Debian, Ubuntu, Arch, Mandriva, FreeBSD meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{ \ft{value of masqmail} meillo@0: meillo@0: covers a niche meillo@0: meillo@0: has unique features meillo@0: meillo@0: has users! meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{ \ft{problems of masqmail} meillo@0: meillo@0: no further development meillo@0: meillo@0: unfixed bugs meillo@0: meillo@0: emailing has changed meillo@0: meillo@0: } meillo@0: meillo@0: meillo@1: \oneline{questions about masqmail?} meillo@0: meillo@0: meillo@1: meillo@1: \secframe{when I meet masqmail} meillo@1: meillo@1: meillo@1: \frame{\ft{using unmaintained software} meillo@0: meillo@0: Fall 2007: started to use masqmail meillo@0: meillo@0: Spring 2008: realized it is unmaintained in Debian meillo@0: meillo@1: A situation to be changed ... but by whom? meillo@0: meillo@1: ... me? No! meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{\ft{diploma thesis} meillo@0: meillo@0: Summer 2008: meillo@0: meillo@1: problem: find a topic for the diploma thesis meillo@0: meillo@1: The great idea: solve two problems meillo@0: meillo@0: use the diploma thesis to revive masqmail meillo@0: meillo@0: } meillo@0: meillo@0: meillo@1: \frame{\ft{advising professor} meillo@1: meillo@1: Professor Sch\"affter meillo@1: meillo@1: thanks! meillo@1: meillo@1: } meillo@1: meillo@1: meillo@1: meillo@0: \frame{\ft{guiding principle} meillo@0: meillo@0: \begin{center} meillo@0: \it meillo@0: Do what you think is interesting,\\ meillo@0: do something that you think is fun and worthwhile,\\ meillo@0: because otherwise you won't do it well anyway. meillo@0: meillo@0: ---Brian~W.\ Kernighan--- meillo@0: \end{center} meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: meillo@1: meillo@1: \secframe{the thesis} meillo@1: meillo@1: meillo@1: \frame{\ft{general decisions} meillo@1: meillo@1: write in English meillo@1: meillo@1: do the thesis for myself meillo@1: meillo@1: ... and for the Free Software community meillo@1: meillo@1: thus, make it free available (see my website!) meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@1: \frame{\ft{planned was} meillo@0: meillo@1: - purpose and structure of an MTA/of masqmail meillo@1: meillo@1: - security analysis meillo@1: meillo@1: - code improvements meillo@1: meillo@1: - documentation, test, distribution meillo@1: meillo@1: meillo@1: With the goal to release a new version and get it into Debian meillo@1: } meillo@1: meillo@1: meillo@1: \frame{\ft{however, it resulted in} meillo@1: meillo@1: - (introduction) meillo@1: meillo@1: - market analysis meillo@1: meillo@1: - mail transfer agents meillo@1: meillo@1: - masqmail's present and future meillo@1: meillo@1: - improvement plans meillo@1: meillo@1: meillo@1: Became pretty theoretic (I don't worry) meillo@1: } meillo@1: meillo@1: meillo@1: meillo@1: meillo@0: meillo@0: meillo@0: meillo@0: \frame{ \ft{ch01: introduction} meillo@0: meillo@0: general prerequisites meillo@0: meillo@0: the masqmail project meillo@0: meillo@0: value and problems of masqmail meillo@0: meillo@1: \textbf{$\Rightarrow$ reasons to do this thesis} meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: \frame{ \ft{ch02: market analysis} meillo@0: meillo@0: classification, life cycle, and trends of electronic communication meillo@0: meillo@0: SWOT and trends for email meillo@0: meillo@1: \textbf{$\Rightarrow$ show that email is expected to survive} meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: \frame{ \ft{ch03: mail transfer agents} meillo@0: meillo@0: classification of MTAs meillo@0: meillo@0: masqmail's competitors meillo@0: meillo@0: short comparison meillo@0: meillo@1: \textbf{$\Rightarrow$ provide knowledge for following chapters} meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: \frame{ \ft{ch04: masqmail's present and future} meillo@0: meillo@0: the goal (revive masqmail) meillo@0: meillo@0: requirements meillo@0: meillo@0: \quad\quad fulfilled requirements meillo@0: meillo@0: \quad\quad work to do meillo@0: meillo@0: ways for further development meillo@0: meillo@0: result meillo@0: meillo@1: \textbf{$\Rightarrow$ the core of the thesis: a plan to revive masqmail} meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@1: \frame{ \ft{ch05: improvement plans} meillo@1: meillo@1: more detailed descriptions of the work tasks meillo@1: meillo@1: \textbf{$\Rightarrow$ recommendations how to do the proposed changes} meillo@1: meillo@1: } meillo@1: meillo@1: meillo@1: \oneline{questions?} meillo@1: meillo@1: meillo@1: meillo@1: meillo@1: meillo@1: \secframe{MTAs in detail} meillo@1: meillo@1: \frame{\ft{MTAs} meillo@1: meillo@1: - relay-only MTAs (forwarders): nullmailer, ssmtp meillo@1: meillo@1: - groupware: Lotus Notes, Exchange, opengroupware.org meillo@1: meillo@1: - ``real'' MTAs: sendmail, exim, qmail, postfix, masqmail meillo@1: meillo@1: } meillo@1: meillo@1: meillo@1: meillo@1: \frame{\ft{market shares} meillo@1: meillo@1: FIXME meillo@1: meillo@1: } meillo@1: meillo@1: meillo@1: meillo@1: \frame{\ft{why not sendmail} meillo@1: meillo@1: - too large meillo@1: meillo@1: - too complex meillo@1: meillo@1: - structurally insecure meillo@1: meillo@1: - simply obsolete meillo@1: meillo@1: } meillo@1: meillo@1: \frame{\ft{why not exim} meillo@1: meillo@1: - too large meillo@1: meillo@1: - designed for always online hosts meillo@1: meillo@1: } meillo@1: meillo@1: \frame{\ft{why not qmail} meillo@1: meillo@1: - outdated meillo@1: meillo@1: - designed for always online hosts with fast connections meillo@1: meillo@1: } meillo@1: meillo@1: \frame{\ft{why not postfix} meillo@1: meillo@1: - too large meillo@1: meillo@1: - not designed for masqmail's scenario meillo@1: meillo@1: } meillo@1: meillo@1: \frame{\ft{in summary} meillo@1: meillo@1: - other MTAs are bad substitutes for masqmail meillo@1: meillo@1: - though they seem to be generally able to be substitutes meillo@1: meillo@1: } meillo@1: meillo@1: meillo@1: \oneline{comments and annotations?} meillo@1: meillo@1: meillo@1: meillo@1: meillo@1: \secframe{Requirements} meillo@1: meillo@1: meillo@1: meillo@1: meillo@1: meillo@1: \frame{\ft{the result} meillo@0: meillo@0: ``one fits all'' is not possible meillo@0: meillo@0: hence: different strategies for different goals meillo@0: meillo@0: short-term goal: keep masqmail usable\\ meillo@0: \quad\quad$\rightarrow$ improve existing code meillo@0: meillo@0: long-term goal: make masqmail future-proof\\ meillo@0: \quad\quad$\rightarrow$ recreate it from scratch meillo@0: meillo@0: disadvantage: more work meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: \frame{ meillo@0: \vfill\vfill meillo@0: \centerline{\textbf{Thanks for your attention}} meillo@0: \vfill meillo@0: } meillo@0: meillo@0: meillo@1: \frame{\ft{links} meillo@1: meillo@1: --all urls-- meillo@1: meillo@1: } meillo@1: meillo@1: meillo@1: meillo@0: meillo@0: \frame{ \ft{software used} meillo@0: meillo@0: Debian GNU/Linux meillo@0: meillo@0: \LaTeX\ with the beamer classes meillo@0: meillo@0: Vim, latexmk, and Mercurial meillo@0: meillo@0: \vfill meillo@0: meillo@0: {\scriptsize The slides are available on \url{http://marmaro.de/docs} \hfill 2009-03-09 } meillo@0: meillo@0: } meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: \end{document} meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: meillo@0: \url{http://ulm.ccc.de/ChaosSeminar/2009/03_masqmail}