anchor.diff:          = tls_handshake(Type, B, S),
       Pid ! {diameter, {tls, Ref}},
       setopts(M, Sock),
  -    NS#transport{ssl = B};
  +    start_fragment_timer(NS#transport{ssl = B});
   
   transition({C, Sock}, #transport{socket = Sock,
                                    ssl = B})
  
positive.code:          frag = <<>> :: frag(),     %% message fragment
           ssl     :: boolean() | [term()],       %% ssl options
           timeout :: infinity | 0..16#FFFFFFFF,  %% fragment timeout
           flush = false :: boolean()}).          %% flush fragment at timeout
  %% The usual transport using gen_tcp can be replaced by anything
  %% sufficiently gen_tcp-like by passing a 'module' option as the first
  %% (for simplicity) transport option. The transport_module diameter_etcp
  
negative.code:     M = if SslOpts -> ssl; true -> Mod end,
      setopts(M, Sock),
      putr(?REF_KEY, Ref),
      #transport{parent = Pid,
                 module = M,
                 socket = Sock,
  