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)
Thu, Sep 17, 4:02 AM
Unknown Object (File)
Tue, Sep 8, 6:08 PM
Unknown Object (File)
Thu, Sep 3, 10:24 AM
Unknown Object (File)
Wed, Sep 2, 12:38 PM
Unknown Object (File)
Wed, Sep 2, 4:57 AM
Unknown Object (File)
Wed, Sep 2, 1:00 AM
Unknown Object (File)
Wed, Sep 2, 12:54 AM
Unknown Object (File)
Thu, Aug 27, 4:22 AM
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.