docs/masqmail-cs

annotate masqmail.tex @ 2:74cc4428c074

lots of new (empty) slides; new content; restructuring
author meillo@marmaro.de
date Sun, 01 Mar 2009 22:22:55 +0100
parents aacb023e76ab
children 40968008fe7c
rev   line source
meillo@0 1 % chaos seminar talk about masqmail
meillo@0 2 %
meillo@0 3 % markus schnalke <meillo@marmaro.de>
meillo@0 4 % since 2009-02-24
meillo@0 5
meillo@0 6
meillo@0 7 \documentclass{beamer}
meillo@0 8
meillo@0 9 \title{masqmail}
meillo@0 10 \author{markus schnalke}
meillo@0 11 \date{2009-03-09}
meillo@0 12
meillo@0 13 \usepackage[utf8]{inputenc}
meillo@0 14 \usepackage{url}
meillo@0 15 \usepackage{graphicx}
meillo@0 16 \setlength{\parskip}{2.0ex plus 1.0ex minus 0.5ex}
meillo@0 17
meillo@0 18 \newcommand{\secframe}[1]{
meillo@0 19 \section{#1}
meillo@0 20 \frame{ \vfill\vfill \centerline{ \huge #1 } \vfill }
meillo@0 21 }
meillo@0 22
meillo@0 23 \newcommand{\ft}[1]{
meillo@0 24 \frametitle{#1}
meillo@0 25 }
meillo@0 26
meillo@1 27 \newcommand{\oneline}[1]{
meillo@1 28 \frame{
meillo@1 29 \vfill\vfill
meillo@1 30 \centerline{\textbf{#1}}
meillo@1 31 \vfill
meillo@1 32 }
meillo@1 33 }
meillo@1 34
meillo@1 35
meillo@0 36
meillo@0 37 \begin{document}
meillo@0 38
meillo@0 39
meillo@0 40 \frame{
meillo@0 41
meillo@0 42 \vspace{8em}
meillo@0 43 \begin{center}
meillo@0 44
meillo@0 45 {\huge\bf masqmail}
meillo@0 46
meillo@0 47 a mail transfer agent for workstations and small networks
meillo@0 48
meillo@0 49 \vspace{6em}
meillo@0 50
meillo@0 51 { \tiny
meillo@0 52 markus schnalke \textless{}meillo@marmaro.de\textgreater{}
meillo@0 53 }
meillo@0 54
meillo@0 55 \end{center}
meillo@0 56 }
meillo@0 57
meillo@0 58
meillo@0 59
meillo@2 60 \secframe{about me}
meillo@0 61
meillo@0 62
meillo@2 63 \frame{\ft{markus schnalke}
meillo@0 64
meillo@2 65 \textbf{past}
meillo@0 66
meillo@2 67 Business Information Systems\\
meillo@2 68 at University of Applied Sciences, Ulm
meillo@2 69
meillo@2 70 Diploma Thesis about masqmail
meillo@2 71
meillo@2 72
meillo@2 73 \textbf{future}
meillo@2 74
meillo@2 75 Master in Informatics\\
meillo@2 76 here at University, Ulm
meillo@0 77
meillo@0 78 }
meillo@0 79
meillo@0 80
meillo@2 81 \frame{\ft{I am interested in}
meillo@0 82
meillo@2 83 Unix Philosophy
meillo@0 84
meillo@2 85 suckless software
meillo@0 86
meillo@0 87 Free Software
meillo@0 88
meillo@0 89 Debian
meillo@0 90
meillo@2 91 }
meillo@0 92
meillo@2 93
meillo@2 94
meillo@2 95
meillo@2 96 \secframe{this talk}
meillo@2 97
meillo@2 98
meillo@2 99 \frame{ \ft{overview}
meillo@2 100
meillo@2 101 1) prerequisites (xx\%)
meillo@2 102
meillo@2 103 2) about masqmail (xx\%)
meillo@2 104
meillo@2 105 3) the thesis (xx\%)
meillo@2 106
meillo@2 107 4) help me to help masqmail (xx\%)
meillo@0 108
meillo@0 109 }
meillo@0 110
meillo@0 111
meillo@0 112
meillo@0 113
meillo@0 114
meillo@0 115
meillo@2 116
meillo@2 117
meillo@2 118 \secframe{Email? MTA? ...}
meillo@2 119
meillo@2 120
meillo@2 121 \frame{\ft{What are MTAs}
meillo@2 122
meillo@2 123 MTA = Mail Transfer Agent
meillo@2 124
meillo@2 125 the post offices of email
meillo@2 126
meillo@2 127 definition: FIXME
meillo@2 128
meillo@2 129 }
meillo@2 130
meillo@2 131
meillo@2 132 \frame{\ft{mail agents}
meillo@2 133
meillo@2 134 \begin{center}
meillo@2 135 \includegraphics[width=0.8\textwidth]{fig/mail-agents.eps}
meillo@2 136 \end{center}
meillo@2 137
meillo@2 138 }
meillo@2 139
meillo@2 140
meillo@2 141 \oneline{questions?}
meillo@2 142
meillo@2 143
meillo@2 144
meillo@2 145
meillo@2 146
meillo@2 147
meillo@0 148 \secframe{about masqmail}
meillo@0 149
meillo@0 150
meillo@0 151
meillo@0 152 \frame{ \ft{what is masqmail}
meillo@0 153
meillo@2 154 an MTA
meillo@0 155
meillo@1 156 a small one
meillo@0 157
meillo@2 158 one for special setups
meillo@0 159
meillo@0 160 }
meillo@0 161
meillo@0 162
meillo@0 163 \frame{ \ft{masqmail's niche}
meillo@0 164
meillo@0 165 non-permanent online connections
meillo@0 166
meillo@0 167 over multiple providers
meillo@0 168
meillo@1 169 especially for workstations and small networks
meillo@1 170
meillo@2 171 also notebooks
meillo@0 172
meillo@0 173 }
meillo@0 174
meillo@0 175
meillo@0 176 \frame{ \ft{history}
meillo@0 177
meillo@0 178 written by Oliver Kurth
meillo@0 179
meillo@2 180 1999 -- 2003
meillo@0 181
meillo@2 182 GPL
meillo@0 183
meillo@2 184 about 9\,000 SLOC
meillo@0 185
meillo@0 186 }
meillo@0 187
meillo@0 188
meillo@2 189 \frame{\ft{guessed}
meillo@2 190
meillo@2 191 initially written to use masqdialer-controlled online connections
meillo@2 192
meillo@2 193 thus: source of the name (``masq\dots'') (not ``\dots qmail'')
meillo@2 194
meillo@2 195 }
meillo@2 196
meillo@2 197
meillo@2 198
meillo@0 199 \frame{ \ft{masqmail today}
meillo@0 200
meillo@0 201 development stopped in 2003
meillo@0 202
meillo@0 203 not maintained
meillo@0 204
meillo@0 205 even its website is down
meillo@0 206
meillo@1 207 but included in Debian, Ubuntu, Arch, Mandriva, FreeBSD
meillo@0 208
meillo@0 209 }
meillo@0 210
meillo@0 211
meillo@0 212 \frame{ \ft{value of masqmail}
meillo@0 213
meillo@0 214 covers a niche
meillo@0 215
meillo@0 216 has unique features
meillo@0 217
meillo@0 218 has users!
meillo@0 219
meillo@0 220 }
meillo@0 221
meillo@0 222
meillo@0 223 \frame{ \ft{problems of masqmail}
meillo@0 224
meillo@0 225 no further development
meillo@0 226
meillo@0 227 unfixed bugs
meillo@0 228
meillo@0 229 emailing has changed
meillo@0 230
meillo@0 231 }
meillo@0 232
meillo@0 233
meillo@1 234 \oneline{questions about masqmail?}
meillo@0 235
meillo@0 236
meillo@1 237
meillo@2 238
meillo@2 239
meillo@2 240
meillo@2 241
meillo@2 242
meillo@2 243
meillo@2 244
meillo@2 245
meillo@2 246
meillo@2 247
meillo@2 248
meillo@2 249
meillo@2 250
meillo@1 251 \secframe{when I meet masqmail}
meillo@1 252
meillo@1 253
meillo@1 254 \frame{\ft{using unmaintained software}
meillo@0 255
meillo@0 256 Fall 2007: started to use masqmail
meillo@0 257
meillo@0 258 Spring 2008: realized it is unmaintained in Debian
meillo@0 259
meillo@1 260 A situation to be changed ... but by whom?
meillo@0 261
meillo@1 262 ... me? No!
meillo@0 263
meillo@0 264 }
meillo@0 265
meillo@0 266
meillo@0 267 \frame{\ft{diploma thesis}
meillo@0 268
meillo@0 269 Summer 2008:
meillo@0 270
meillo@1 271 problem: find a topic for the diploma thesis
meillo@0 272
meillo@1 273 The great idea: solve two problems
meillo@0 274
meillo@0 275 use the diploma thesis to revive masqmail
meillo@0 276
meillo@0 277 }
meillo@0 278
meillo@0 279
meillo@1 280 \frame{\ft{advising professor}
meillo@1 281
meillo@1 282 Professor Sch\"affter
meillo@1 283
meillo@1 284 thanks!
meillo@1 285
meillo@1 286 }
meillo@1 287
meillo@1 288
meillo@1 289
meillo@2 290
meillo@2 291 \frame{\ft{motivation}
meillo@2 292
meillo@2 293 \textbf{motivation}
meillo@2 294
meillo@2 295 - for myself
meillo@2 296
meillo@2 297 - for the community
meillo@2 298
meillo@2 299 \textbf{thus}
meillo@2 300
meillo@2 301 - in English
meillo@2 302
meillo@2 303 - free available
meillo@2 304
meillo@2 305 }
meillo@2 306
meillo@2 307
meillo@2 308
meillo@0 309 \frame{\ft{guiding principle}
meillo@0 310
meillo@0 311 \begin{center}
meillo@2 312 \it
meillo@2 313 Do what you think is interesting,\\
meillo@2 314 do something that you think is fun and worthwhile,\\
meillo@2 315 because otherwise you won't do it well anyway.
meillo@0 316
meillo@2 317 ---Brian~W.\ Kernighan---
meillo@0 318 \end{center}
meillo@0 319
meillo@0 320 }
meillo@0 321
meillo@0 322
meillo@0 323
meillo@0 324
meillo@1 325
meillo@1 326
meillo@1 327
meillo@2 328 \secframe{the thesis in short}
meillo@0 329
meillo@0 330
meillo@0 331
meillo@1 332 \frame{\ft{planned was}
meillo@0 333
meillo@1 334 - purpose and structure of an MTA/of masqmail
meillo@1 335
meillo@1 336 - security analysis
meillo@1 337
meillo@1 338 - code improvements
meillo@1 339
meillo@1 340 - documentation, test, distribution
meillo@1 341
meillo@2 342 With the goal to release a new version and get it into Debian
meillo@1 343
meillo@1 344 }
meillo@1 345
meillo@1 346
meillo@1 347 \frame{\ft{however, it resulted in}
meillo@1 348
meillo@1 349 - (introduction)
meillo@1 350
meillo@1 351 - market analysis
meillo@1 352
meillo@1 353 - mail transfer agents
meillo@1 354
meillo@1 355 - masqmail's present and future
meillo@1 356
meillo@1 357 - improvement plans
meillo@1 358
meillo@2 359 Became pretty theoretic (I don't worry)
meillo@1 360
meillo@1 361 }
meillo@1 362
meillo@1 363
meillo@1 364
meillo@1 365
meillo@0 366
meillo@0 367
meillo@0 368
meillo@0 369 \frame{ \ft{ch01: introduction}
meillo@0 370
meillo@0 371 general prerequisites
meillo@0 372
meillo@0 373 the masqmail project
meillo@0 374
meillo@0 375 value and problems of masqmail
meillo@0 376
meillo@1 377 \textbf{$\Rightarrow$ reasons to do this thesis}
meillo@0 378
meillo@0 379 }
meillo@0 380
meillo@0 381
meillo@0 382
meillo@0 383 \frame{ \ft{ch02: market analysis}
meillo@0 384
meillo@0 385 classification, life cycle, and trends of electronic communication
meillo@0 386
meillo@0 387 SWOT and trends for email
meillo@0 388
meillo@1 389 \textbf{$\Rightarrow$ show that email is expected to survive}
meillo@0 390
meillo@0 391 }
meillo@0 392
meillo@0 393
meillo@0 394 \frame{ \ft{ch03: mail transfer agents}
meillo@0 395
meillo@0 396 classification of MTAs
meillo@0 397
meillo@0 398 masqmail's competitors
meillo@0 399
meillo@0 400 short comparison
meillo@0 401
meillo@1 402 \textbf{$\Rightarrow$ provide knowledge for following chapters}
meillo@0 403
meillo@0 404 }
meillo@0 405
meillo@0 406
meillo@0 407
meillo@0 408
meillo@0 409 \frame{ \ft{ch04: masqmail's present and future}
meillo@0 410
meillo@0 411 the goal (revive masqmail)
meillo@0 412
meillo@0 413 requirements
meillo@0 414
meillo@0 415 \quad\quad fulfilled requirements
meillo@0 416
meillo@0 417 \quad\quad work to do
meillo@0 418
meillo@0 419 ways for further development
meillo@0 420
meillo@0 421 result
meillo@0 422
meillo@1 423 \textbf{$\Rightarrow$ the core of the thesis: a plan to revive masqmail}
meillo@0 424
meillo@0 425 }
meillo@0 426
meillo@0 427
meillo@0 428
meillo@1 429 \frame{ \ft{ch05: improvement plans}
meillo@1 430
meillo@1 431 more detailed descriptions of the work tasks
meillo@1 432
meillo@1 433 \textbf{$\Rightarrow$ recommendations how to do the proposed changes}
meillo@1 434
meillo@1 435 }
meillo@1 436
meillo@1 437
meillo@1 438 \oneline{questions?}
meillo@1 439
meillo@1 440
meillo@1 441
meillo@1 442
meillo@1 443
meillo@2 444
meillo@2 445
meillo@2 446
meillo@2 447
meillo@2 448
meillo@2 449
meillo@2 450
meillo@2 451 \secframe{in detail: ch03 MTAs}
meillo@2 452
meillo@2 453
meillo@1 454
meillo@1 455 \frame{\ft{MTAs}
meillo@1 456
meillo@1 457 - relay-only MTAs (forwarders): nullmailer, ssmtp
meillo@1 458
meillo@1 459 - groupware: Lotus Notes, Exchange, opengroupware.org
meillo@1 460
meillo@1 461 - ``real'' MTAs: sendmail, exim, qmail, postfix, masqmail
meillo@1 462
meillo@1 463 }
meillo@1 464
meillo@1 465
meillo@1 466
meillo@1 467 \frame{\ft{market shares}
meillo@1 468
meillo@1 469 FIXME
meillo@1 470
meillo@1 471 }
meillo@1 472
meillo@1 473
meillo@1 474
meillo@1 475 \frame{\ft{why not sendmail}
meillo@1 476
meillo@1 477 - too large
meillo@1 478
meillo@1 479 - too complex
meillo@1 480
meillo@1 481 - structurally insecure
meillo@1 482
meillo@1 483 - simply obsolete
meillo@1 484
meillo@1 485 }
meillo@1 486
meillo@1 487 \frame{\ft{why not exim}
meillo@1 488
meillo@1 489 - too large
meillo@1 490
meillo@1 491 - designed for always online hosts
meillo@1 492
meillo@1 493 }
meillo@1 494
meillo@1 495 \frame{\ft{why not qmail}
meillo@1 496
meillo@1 497 - outdated
meillo@1 498
meillo@1 499 - designed for always online hosts with fast connections
meillo@1 500
meillo@1 501 }
meillo@1 502
meillo@1 503 \frame{\ft{why not postfix}
meillo@1 504
meillo@1 505 - too large
meillo@1 506
meillo@1 507 - not designed for masqmail's scenario
meillo@1 508
meillo@1 509 }
meillo@1 510
meillo@1 511 \frame{\ft{in summary}
meillo@1 512
meillo@1 513 - other MTAs are bad substitutes for masqmail
meillo@1 514
meillo@1 515 - though they seem to be generally able to be substitutes
meillo@1 516
meillo@1 517 }
meillo@1 518
meillo@1 519
meillo@1 520 \oneline{comments and annotations?}
meillo@1 521
meillo@1 522
meillo@1 523
meillo@1 524
meillo@1 525
meillo@1 526
meillo@1 527
meillo@1 528
meillo@1 529
meillo@2 530
meillo@2 531
meillo@2 532
meillo@2 533
meillo@2 534
meillo@2 535
meillo@2 536 \secframe{in detail: ch04 present and future}
meillo@2 537
meillo@2 538
meillo@2 539 \frame{\ft{functional requirements}
meillo@2 540
meillo@2 541 }
meillo@2 542
meillo@2 543 \frame{\ft{non-functional requirements}
meillo@2 544
meillo@2 545 }
meillo@2 546
meillo@2 547 \frame{\ft{architectural requirements}
meillo@2 548
meillo@2 549 }
meillo@2 550
meillo@2 551 \frame{\ft{fulfilled requirements}
meillo@2 552
meillo@2 553 }
meillo@2 554
meillo@2 555 \frame{\ft{work to do}
meillo@2 556
meillo@2 557 }
meillo@2 558
meillo@2 559
meillo@2 560 \frame{\ft{further development}
meillo@2 561
meillo@2 562 }
meillo@2 563
meillo@2 564
meillo@1 565 \frame{\ft{the result}
meillo@0 566
meillo@0 567 ``one fits all'' is not possible
meillo@0 568
meillo@0 569 hence: different strategies for different goals
meillo@0 570
meillo@0 571 short-term goal: keep masqmail usable\\
meillo@0 572 \quad\quad$\rightarrow$ improve existing code
meillo@0 573
meillo@0 574 long-term goal: make masqmail future-proof\\
meillo@0 575 \quad\quad$\rightarrow$ recreate it from scratch
meillo@0 576
meillo@0 577 disadvantage: more work
meillo@0 578
meillo@0 579 }
meillo@0 580
meillo@0 581
meillo@0 582
meillo@0 583
meillo@0 584
meillo@0 585
meillo@0 586
meillo@0 587
meillo@0 588
meillo@2 589 \secframe{in detail: ch05.1 existing code}
meillo@2 590
meillo@2 591
meillo@2 592
meillo@2 593
meillo@2 594 \frame{\ft{masqmail's code base}
meillo@2 595
meillo@2 596 C
meillo@2 597
meillo@2 598 ~ 9,000 SLOC
meillo@2 599
meillo@2 600 }
meillo@2 601
meillo@2 602
meillo@2 603
meillo@2 604
meillo@2 605
meillo@2 606
meillo@2 607
meillo@2 608
meillo@2 609
meillo@2 610 \secframe{in detail: ch05.2 new design}
meillo@2 611
meillo@2 612 \frame{\ft{FIXME}
meillo@2 613
meillo@2 614 }
meillo@2 615
meillo@2 616
meillo@2 617
meillo@2 618
meillo@2 619
meillo@2 620
meillo@2 621 \secframe{HELP!}
meillo@2 622
meillo@2 623
meillo@2 624 \frame{\ft{FIXME}
meillo@2 625
meillo@2 626 }
meillo@0 627
meillo@0 628
meillo@0 629
meillo@0 630
meillo@0 631
meillo@0 632
meillo@0 633
meillo@0 634 \frame{
meillo@0 635 \vfill\vfill
meillo@0 636 \centerline{\textbf{Thanks for your attention}}
meillo@0 637 \vfill
meillo@0 638 }
meillo@0 639
meillo@0 640
meillo@1 641 \frame{\ft{links}
meillo@1 642
meillo@1 643 --all urls--
meillo@1 644
meillo@1 645 }
meillo@1 646
meillo@1 647
meillo@1 648
meillo@0 649
meillo@0 650 \frame{ \ft{software used}
meillo@0 651
meillo@0 652 Debian GNU/Linux
meillo@0 653
meillo@0 654 \LaTeX\ with the beamer classes
meillo@0 655
meillo@0 656 Vim, latexmk, and Mercurial
meillo@0 657
meillo@0 658 \vfill
meillo@0 659
meillo@0 660 {\scriptsize The slides are available on \url{http://marmaro.de/docs} \hfill 2009-03-09 }
meillo@0 661
meillo@0 662 }
meillo@0 663
meillo@0 664
meillo@0 665
meillo@0 666
meillo@0 667 \end{document}
meillo@0 668
meillo@0 669
meillo@0 670
meillo@0 671
meillo@0 672
meillo@0 673 \url{http://ulm.ccc.de/ChaosSeminar/2009/03_masqmail}