Fossil SCM
Defend against undefined values in query parameters in the cgi_check_for_malice() routine.
Commit
08df33aa4cae9f3a476ae50a6b6dc2fcb66731fbf50c1abf979e9a36b7fb2a3a
Parent
e9d8c04c94fd072…
1 file changed
+6
-3
+6
-3
| --- src/cgi.c | ||
| +++ src/cgi.c | ||
| @@ -2774,13 +2774,16 @@ | ||
| 2774 | 2774 | ** have been consulted. |
| 2775 | 2775 | */ |
| 2776 | 2776 | void cgi_check_for_malice(void){ |
| 2777 | 2777 | struct QParam * pParam; |
| 2778 | 2778 | int i; |
| 2779 | - for(i = 0; i < nUsedQP; ++i){ | |
| 2779 | + for(i=0; i<nUsedQP; ++i){ | |
| 2780 | 2780 | pParam = &aParamQP[i]; |
| 2781 | - if(0 == pParam->isFetched | |
| 2782 | - && fossil_islower(pParam->zName[0])){ | |
| 2781 | + if( 0==pParam->isFetched | |
| 2782 | + && pParam->zValue!=0 | |
| 2783 | + && pParam->zName!=0 | |
| 2784 | + && fossil_islower(pParam->zName[0]) | |
| 2785 | + ){ | |
| 2783 | 2786 | cgi_value_spider_check(pParam->zValue, pParam->zName); |
| 2784 | 2787 | } |
| 2785 | 2788 | } |
| 2786 | 2789 | } |
| 2787 | 2790 |
| --- src/cgi.c | |
| +++ src/cgi.c | |
| @@ -2774,13 +2774,16 @@ | |
| 2774 | ** have been consulted. |
| 2775 | */ |
| 2776 | void cgi_check_for_malice(void){ |
| 2777 | struct QParam * pParam; |
| 2778 | int i; |
| 2779 | for(i = 0; i < nUsedQP; ++i){ |
| 2780 | pParam = &aParamQP[i]; |
| 2781 | if(0 == pParam->isFetched |
| 2782 | && fossil_islower(pParam->zName[0])){ |
| 2783 | cgi_value_spider_check(pParam->zValue, pParam->zName); |
| 2784 | } |
| 2785 | } |
| 2786 | } |
| 2787 |
| --- src/cgi.c | |
| +++ src/cgi.c | |
| @@ -2774,13 +2774,16 @@ | |
| 2774 | ** have been consulted. |
| 2775 | */ |
| 2776 | void cgi_check_for_malice(void){ |
| 2777 | struct QParam * pParam; |
| 2778 | int i; |
| 2779 | for(i=0; i<nUsedQP; ++i){ |
| 2780 | pParam = &aParamQP[i]; |
| 2781 | if( 0==pParam->isFetched |
| 2782 | && pParam->zValue!=0 |
| 2783 | && pParam->zName!=0 |
| 2784 | && fossil_islower(pParam->zName[0]) |
| 2785 | ){ |
| 2786 | cgi_value_spider_check(pParam->zValue, pParam->zName); |
| 2787 | } |
| 2788 | } |
| 2789 | } |
| 2790 |