On Fri, Feb 17, 2017 at 03:54:56PM +0900, Siwon Kang wrote: > The function ieee80211_chan_to_freq() is supposed to return -1 if the > specified channel is unknown. However, current if-conditional statements > do not catch a few wrong combination. For example, {"US", 81, 13} for > country code, operating class, channel, respectively should > return -1 because op_class 81 is not in the list and channel 13 is not > allowed but currently returns 2472 as if it is global. > > This patch removes 'if (freq > 0)' to prevent from stepping over when an > input op_class is out of the list of a country then finally going to > ieee80211_chan_to_freq_global(). Instead, it returns result of > sub-function directly which is correct. Does this fix something externally observable? It looks like the current design of the function uses the global table as a backup path on purpose. As such, I would rather not modify this unless there is a clearly identifiable misbehavior and/or no chances of breaking some existing use cases. > - int freq; > + if (country_match(us_op_class_cc, country)) In addition, this is whitespace damaged (tabs converted to a single space), so I cannot apply it. -- Jouni Malinen PGP id EFC895FA _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap