Page MenuHomeFreeBSD

libnvmf: Add nvmf_nqn_valid_strict() function
ClosedPublic

Authored by jhb on Jan 31 2025, 8:16 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Sep 8, 6:22 AM
Unknown Object (File)
Wed, Sep 3, 10:17 PM
Unknown Object (File)
Tue, Sep 2, 2:17 PM
Unknown Object (File)
Tue, Sep 2, 11:40 AM
Unknown Object (File)
Mon, Sep 1, 4:05 PM
Unknown Object (File)
Mon, Sep 1, 9:32 AM
Unknown Object (File)
Sat, Aug 23, 7:52 AM
Unknown Object (File)
Wed, Aug 20, 12:55 PM
Subscribers

Details

Summary

This moves the checks previously under #ifdef STRICT in
nvmf_nqn_valid() into a separate helper for userland. This
requires that the NQN starts with "nqn.YYYY-MM." followed by at
least one additional character.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 62172
Build 59056: arc lint + arc unit

Event Timeline

jhb requested review of this revision.Jan 31 2025, 8:16 PM

The only improvement I could suggest would be to factor out the guts of both functions into a third, private function. That would save callers of nvmf_nqn_valid_strict from calling strlen twice. But it's probably premature optimization.

This revision is now accepted and ready to land.Jan 31 2025, 10:05 PM

The only improvement I could suggest would be to factor out the guts of both functions into a third, private function. That would save callers of nvmf_nqn_valid_strict from calling strlen twice. But it's probably premature optimization.

Yeah, I thought about it and initially I had made the common routine in the header take a bool strict argument, but the kernel never uses the strict version, only ctld(8) in userspace when parsing a config file (which is not a hot path).

This revision was automatically updated to reflect the committed changes.