• Ziye Yang's avatar
    nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu · a6ce7d7b
    Ziye Yang authored
    When handling commands without in-capsule data, we assign the ttag
    assuming we already have the queue commands array allocated (based
    on the queue size information in the connect data payload). However
    if the connect itself did not send the connect data in-capsule we
    have yet to allocate the queue commands,and we will assign a bogus
    ttag and suffer a NULL dereference when we receive the corresponding
    h2cdata pdu.
    
    Fix this by checking if we already allocated commands before
    dereferencing it when handling h2cdata, if we didn't, its for sure a
    connect and we should use the preallocated connect command.
    Signed-off-by: default avatarZiye Yang <ziye.yang@intel.com>
    Signed-off-by: default avatarSagi Grimberg <sagi@grimberg.me>
    a6ce7d7b
tcp.c 41.8 KB