|
|
@@ -192,25 +192,36 @@ void X509_VERIFY_PARAM_free(X509_VERIFY_PARAM *param) |
|
|
|
OPENSSL_free(param); |
|
|
|
} |
|
|
|
|
|
|
|
/* |
|
|
|
/*- |
|
|
|
* This function determines how parameters are "inherited" from one structure |
|
|
|
* to another. There are several different ways this can happen. 1. If a |
|
|
|
* child structure needs to have its values initialized from a parent they are |
|
|
|
* simply copied across. For example SSL_CTX copied to SSL. 2. If the |
|
|
|
* structure should take on values only if they are currently unset. For |
|
|
|
* example the values in an SSL structure will take appropriate value for SSL |
|
|
|
* servers or clients but only if the application has not set new ones. The |
|
|
|
* "inh_flags" field determines how this function behaves. Normally any |
|
|
|
* values which are set in the default are not copied from the destination and |
|
|
|
* verify flags are ORed together. If X509_VP_FLAG_DEFAULT is set then |
|
|
|
* anything set in the source is copied to the destination. Effectively the |
|
|
|
* values in "to" become default values which will be used only if nothing new |
|
|
|
* is set in "from". If X509_VP_FLAG_OVERWRITE is set then all value are |
|
|
|
* copied across whether they are set or not. Flags is still Ored though. If |
|
|
|
* X509_VP_FLAG_RESET_FLAGS is set then the flags value is copied instead of |
|
|
|
* ORed. If X509_VP_FLAG_LOCKED is set then no values are copied. If |
|
|
|
* X509_VP_FLAG_ONCE is set then the current inh_flags setting is zeroed after |
|
|
|
* the next call. |
|
|
|
* to another. There are several different ways this can happen. |
|
|
|
* |
|
|
|
* 1. If a child structure needs to have its values initialized from a parent |
|
|
|
* they are simply copied across. For example SSL_CTX copied to SSL. |
|
|
|
* 2. If the structure should take on values only if they are currently unset. |
|
|
|
* For example the values in an SSL structure will take appropriate value |
|
|
|
* for SSL servers or clients but only if the application has not set new |
|
|
|
* ones. |
|
|
|
* |
|
|
|
* The "inh_flags" field determines how this function behaves. |
|
|
|
* |
|
|
|
* Normally any values which are set in the default are not copied from the |
|
|
|
* destination and verify flags are ORed together. |
|
|
|
* |
|
|
|
* If X509_VP_FLAG_DEFAULT is set then anything set in the source is copied |
|
|
|
* to the destination. Effectively the values in "to" become default values |
|
|
|
* which will be used only if nothing new is set in "from". |
|
|
|
* |
|
|
|
* If X509_VP_FLAG_OVERWRITE is set then all value are copied across whether |
|
|
|
* they are set or not. Flags is still Ored though. |
|
|
|
* |
|
|
|
* If X509_VP_FLAG_RESET_FLAGS is set then the flags value is copied instead |
|
|
|
* of ORed. |
|
|
|
* |
|
|
|
* If X509_VP_FLAG_LOCKED is set then no values are copied. |
|
|
|
* |
|
|
|
* If X509_VP_FLAG_ONCE is set then the current inh_flags setting is zeroed |
|
|
|
* after the next call. |
|
|
|
*/ |
|
|
|
|
|
|
|
/* Macro to test if a field should be copied from src to dest */ |
|
|
|