This has been bothering me for a while. Security, performance tests etc. are all done typically using the black box approach. But these are nonfunctional,while black box is called functional testing.Is it because it judges the function and it is just a naming or there is an inconsistency?References:Software Engineering by SallehSoftware Engineering and Testing by Gupta, TayalSoftware Engineering by A.A.PuntambekarSoftware Testing: a Practical Approach by Sandeep Desai, Abhishek Srivastava 
Why is black box called functional testing when it tests also non functional?
terminology;standards;theory;functional testing
Ok, by a quick google search I found a cite from your first reference:white box testing techniques are also called structural testing techniques, whereas black-box testing techniques are also called functional testing techniquesI guess you are referring to that. To my understanding the term functional testing is used here in a very broad meaning, just to emphasize the difference to structural testing. From this point of view, performance or security are also functions of a program, since they can be observed by a black-box execution of the program, without knowing details of the source code.  Using the term functional in opposition to non-functional, however, narrows the meaning down to core functions or domain functions. This is a quite different point of view. So if someone speaks about functional testing, you have to be careful what he might mean and interpret this in relation to the current context.