Skeleton code for filters.
authorArt Cancro <ajc@citadel.org>
Tue, 20 Feb 2024 15:15:57 +0000 (10:15 -0500)
committerArt Cancro <ajc@citadel.org>
Tue, 20 Feb 2024 15:15:57 +0000 (10:15 -0500)
All of the filters specified in RFC4971 9.7.1 through 9.7.5 will
be handled in this loop: comp-filter, prop-filter, param-filter,
is-not-defined, text-match, and probably others as we complete the
spec.

Also, in all of the .c files I unwrapped the license declaration onto a single
line, since the whole thing fits inside 132 characters, and 132 characters is
our official line length now.

20 files changed:
webcit-ng/server/admin_functions.c
webcit-ng/server/caldav_reports.c
webcit-ng/server/ctdl_commands.c
webcit-ng/server/ctdlclient.c
webcit-ng/server/ctdlfunctions.c
webcit-ng/server/floor_functions.c
webcit-ng/server/forum_view.c
webcit-ng/server/html2html.c
webcit-ng/server/http.c
webcit-ng/server/main.c
webcit-ng/server/messages.c
webcit-ng/server/request.c
webcit-ng/server/room_functions.c
webcit-ng/server/static.c
webcit-ng/server/tcp_sockets.c
webcit-ng/server/text2html.c
webcit-ng/server/tls.c
webcit-ng/server/upload.c
webcit-ng/server/user_functions.c
webcit-ng/server/webserver.c

index 62843f26e6933fb30aef2bc9fbcb5866e478c9f7..9d5ddb002b5093547f117917eba5239b077b9440 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 21dbdb74e55a41b27e5c31864cbec49db15f946d..514885766690ffce5c9626a03244ca9b390ccefd 100644 (file)
@@ -280,6 +280,28 @@ int caldav_apply_one_filter(void *cal, char *filter) {
                ++num_tokens;
        }
 
+       // Handle the individual filters defined in RFC4791 9.7.1 through 9.7.5
+
+       if (!strcasecmp(t[0], "comp-filter")) {                         // RFC4791 9.7.1 - filter by component
+               syslog(LOG_DEBUG, "component filter FIXME not implemented yet");
+       }
+
+       else if (!strcasecmp(t[0], "prop-filter")) {                    // RFC4791 9.7.2 - filter by property
+               syslog(LOG_DEBUG, "property filter FIXME not implemented yet");
+       }
+
+       else if (!strcasecmp(t[0], "param-filter")) {                   // RFC4791 9.7.3 - filter by parameter
+               syslog(LOG_DEBUG, "parameter filter FIXME not implemented yet");
+       }
+
+       else if (!strcasecmp(t[0], "is-not-defined")) {                 // RFC4791 9.7.4
+               syslog(LOG_DEBUG, "is-not-defined filter FIXME not implemented yet");
+       }
+
+       else if (!strcasecmp(t[0], "text-match")) {                     // RFC4791 9.7.5
+               syslog(LOG_DEBUG, "text match filter FIXME not implemented yet");
+       }
+
        return(1);
 }
 
index 61b06730333fd6af7a8422c5dd793cc00e8befdb..2f3f7b1bbbfaf6c2c0592149bb6a5149b6e5af81 100644 (file)
@@ -1,7 +1,6 @@
 // Copyright (c) 1996-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index f7d03615c6c563d0ff4e32ed27282cc5a6fffb33..1d0dacb01754e3474508d4ca77c1f21cdfd6a8ce 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1987-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index d6798d2ab5749e29c658dbf11387ea5dbde39cef..407d153409e466ae1b75c1cdd079ba8a9479417c 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 2016-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index accd6dda05ede571d6502697de4975e13a30222d..5574d5ec5a799e5da48e782de1b7c6f3e7cdf150 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 188f2e8cc509ccfb02529f755beb99a9e901cac5..89303256aa0a83bbacd8c1925099bd4a0bf83abb 100644 (file)
@@ -3,8 +3,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 5a76bc2fc3ca1de59a175802f7b1c7d4af79888c..d99877c89fd572edae3d24935d9448afaa097f95 100644 (file)
@@ -3,8 +3,7 @@
 //
 // Copyright (c) 2005-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 77c158fe4776a032b69e654d0403bf816481aa3d..c770cd30e76e046806848e8d2c371f43b81ed1ca 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 9416679412cdc6acd4b271531f335a9eac2104dd..e06d70693ae1d09b269c43b40fbd33470aca6772 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2024 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"            // All other headers are included from this header.
 
index e9cb5a458268927b7b8b357da4a55b5682e0643d..841580405514ae6ec1324f4bde26676aa6b08c10 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index c0fa86b2cb9568d06e714a1560d4ae724e9410f0..bd1b3253888e1f8d96968c41d842daf51ea05915 100644 (file)
@@ -6,8 +6,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 3ab2f5dc103b5b636225b2f0be469a36e83b7ee2..09e7bac39f307cd41c3cde7e04028c55a0992648 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2024 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 0599e899f73d914ad904b21601c1b4b6054fa43b..060ff1f4f82e5220325391c3fa5056db181dcf77 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 82206fdc3822b26f74c4feb0ae14e76d992ea222..6c5701266a52bd6c0551dd7f111a4859819ab773 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1987-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 5c7eba6e23fd6e7c9fa4a95d4e0fcb15127ed01a..b4ecd4b2fa59fd1a827ef7abc7c6aa466960fd6c 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 2017-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index e0a9e137fe612d10400317784e4f116d2382dc22..76db181dc1ed8557a8604918b9b859a1bf2ea332 100644 (file)
@@ -3,8 +3,7 @@
 //
 // Copyright (c) 1996-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index dcad84bc5248655d48a3b8a6ed97ab4c9ed1c682..fd7a77b250d068d5f87ae061be62cb31e53f6181 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index d4db7571f09a0fb6b056932b1635b165b8848274..64fc9b558e5b4255c7668f89370188a26ec3bc0d 100644 (file)
@@ -2,8 +2,7 @@
 //
 // Copyright (c) 1996-2023 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"
 
index 1a4545fa9c999ac37d2e5aaa57dfb8329ca29b62..446625d9c12593fd655ed9ecb9033cba8fb13d40 100644 (file)
@@ -6,8 +6,7 @@
 //
 // Copyright (c) 1996-2022 by the citadel.org team
 //
-// This program is open source software.  Use, duplication, or
-// disclosure is subject to the GNU General Public License v3.
+// This program is open source software.  Use, duplication, or disclosure is subject to the GNU General Public License v3.
 
 #include "webcit.h"                    // All other headers are included from this header.