&& takes precedence over ||

There was
```
if (m_options.ReceiveBuffer > 0 && m_pgmSocketType == PgmSocketType.Receiver
    || m_pgmSocketType == PgmSocketType.Listener)
```

which [is equivalent](https://msdn.microsoft.com/en-us/library/aa691323(v=vs.71).aspx) to

```
if ((m_options.ReceiveBuffer > 0 && m_pgmSocketType == PgmSocketType.Receiver)
    || m_pgmSocketType == PgmSocketType.Listener)
```

but I think you want

```
if (m_options.ReceiveBuffer > 0 && (m_pgmSocketType == PgmSocketType.Receiver
    || m_pgmSocketType == PgmSocketType.Listener))
```