From the doc:
"The number of logging events delivered in this e-mail depend on the value of BufferSize option. The SMTPAppender keeps only the last BufferSize logging events in its cyclic buffer. This keeps memory requirements at a reasonable level while still delivering useful application context. All events in the buffer are included in the email. The buffer will contain the most recent events of level TRACE to WARN preceding the event that triggered the email."
The bufferSize is the number of messages preceding the message that triggered the event. They might be completely unrelated. One may not want to include them in the email at all, so having a bufferSize of 0 makes sense.
This is however disallowed in the code:
Caused by: java.lang.IllegalArgumentException: The maxSize argument (0) is not a positive integer.