Re: What are valid iscsi iqn names?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/24/2015 08:07 AM, Jerome Martin wrote:
> On 12/24/2015 09:07 AM, Zhu Lingshan wrote:
>> Hi experts,
>>
>> I am working on a patch for Targetcli, I have some fix plans, hope can
>> get your suggestions, thanks!
>> The patch want to fix a bug of  Targetcli, that is if we leave iSCSI
>> name empty when create
>>  a iSCSI target like this:
>>
>> /> iscsi/ create
>> Invalid iqn wwn:
>> iqn.2003-01.org.linux-iscsi.leap_targetcli.x8664:sn.dd5521da2386
>> />
>>
>> we will see that error above, the reason is,  "leap_targetcli" in the
>> target name,
>> this part of the automatic generated has a "_", which will be rejected
>> by the
>> function "is_valid_wwn(wwn_type, wwn, wwn_list=None)"
> 
> Replacing them with a dash when auto-generating might be an option.
> 
>>
>> This function will judge whether this wwn is valid, it will reject any
>> wwn names
>> has a " " or  "_", I think that make sense, but when I read RFC3720, I
>> find that may
>> be not enough.
> 
> You are right, we do not enforce full RFC3270 IQN compliance.
>>
>> In RFC3720, section 3.2.6.2  it's said:
>>
>> The following characters are used for formatting iSCSI names:
>> - dash (’-’=U+002d)
>> - dot (’.’=U+002e)
>> - colon (’:’=U+003a)
>>
>> So I assume that,  "-", "." and ":" are acceptable in a iqn wwn name,
>> other special characters
>> like "!","@" and "$" should  be rejected. But I did not see that code in
>> function "is_valid_wwn(wwn_type, wwn, wwn_list=None)"
> 
> Again, you are right.
> 
>>
>> I wonder whether I am understanding this right. Hope can get some
>> suggestions from you,
>> If I understand that right, I will write a patch to fix it, that
>> means, add some code lines to
>> reject characters like "!" and "&".  Thanks!
>>
>> Another thing is, I find Targetcli will add host name in the automatic
>> generated iSCSI wwn name,
>> Like :
>> /> iscsi/ create
>> Invalid iqn wwn:
>> iqn.2003-01.org.linux-iscsi.leap_targetcli.x8664:sn.dd5521da2386
>> />
>>
>> This part "leap_targetcli" is my host name, which has a "_", I also
>> want to fix this one, shall we change
>> "_" to "-" when handle such a host name or we can remove host name in
>> a automatic generated iSCSI wwn name?
> 
> I think doing some automated conversion to dash is a way to do it, yes.
> 
> Funny however that you embark on this and have a "_" in your hostname,
> which is _not_ a legal character in https://www.ietf.org/rfc/rfc952.txt
> hostnames! :-) The reasoning behind not checking the hostname to
> autogenerate the IQN is that hostnames normally should only contain a-z,
> 0-9 and "-" chars, which all are legal in RFC3270. The reasoning behind
> letting user-generated IQNs be more flexible is that at the time legacy
> systems were using non-RFC3270 chars already and needed this for
> compatibility. Basically, if your initiator supports it, you are free as
> the sysadmin to follow the RFC or not.
> 
> But I am not arguing here that we should not enforce RFC3270, that would
> of course be cleaner.
> As for the hostname, well, assuming they would be valid RFC952 obviously
> has its limits, so yes, we might want to do something about it.
> 
> Best Regards,
> -- 
> Jerome Martin
> -- 
> To unsubscribe from this list: send the line "unsubscribe target-devel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

I also would be in favor of a minimal fix, i.e. converting "_" to "-".
You could check for more "bad" characters (like spaces), but as Jerome
said, they aren't supposed to be in host names.

Work around: you can supply your own source IQN.
-- 
Lee Duncan

--
To unsubscribe from this list: send the line "unsubscribe target-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux