Kopano Groupware Core
  1. Kopano Groupware Core

kopanocore

Public
AuthorCommitMessageCommit dateIssues
Joost HopmansJoost Hopmans
e783b3ecae5MPull request #3503: pyko: don't always assume an item has a userMerge in KC/kopanocore from ~JVANDERWAA/kopanocore:KC-1980 to master * commit '4f789dbb4199d31979534506429527512113bfa4': pyko: don't always assume an item has a userKC-1980
Joost HopmansJoost Hopmans
3db200c7bc6MPull request #3502: Improve convert_context's performance; Step 3 Set up a global convert_context and simplify iconv_context classMerge in KC/kopanocore from ~JGOUVEIA/kopanocore:step-3-get-rid-of-icon-context-dependencies to master * commit '3208ee7463677738776f98114ce938116d74ddf2': Close and re-open iconv object before reusing it Add a function to create a new iconv_context Add a global convert_context to each thread. Variable is rhs, not lhs Move inline functions to cpp file Remove unecessary iconv_contex...
Jelle van der WaaJelle van der Waa
4f789dbb419pyko: don't always assume an item has a userWhen importing an item into the public folder there is no self.user available. References: KC-1980KC-1980
João GouveiaJoão Gouveia
3208ee74636Close and re-open iconv object before reusing itAccording to iconv's documentation passing a nullptr as a buffer should reset it to its intial state. However it seems sometimes we get an unexpected conversion result. Running the unittests reveals this problem. Example: when converting from UTF-32LE to //TRANSLIT encoding, from a wide character to a character. If the original string is ザラファ we expect to get ????, since we shouldn't be able to...
João GouveiaJoão Gouveia
68c6f76fa1dAdd a function to create a new iconv_contextPreviously we had no way to create a new context and check if the charsets are compatible unless we try to convert. This allows a user of the class to create a context in advance and catch exceptions (typically due to invalid charsets). A function to do the same on the global context was also added.
João GouveiaJoão Gouveia
83f9273b7feAdd a global convert_context to each thread.This allows a call to convert_to to reuse any context that has been already open. The variable exists on every thread and is not shared so it is thread safe.
João GouveiaJoão Gouveia
3e881367bd8Variable is rhs, not lhs
João GouveiaJoão Gouveia
3c0faea6a26Move inline functions to cpp fileNon template functions do not need to be inline and this helps clean the already very big header file a bit, improving readability.
João GouveiaJoão Gouveia
3322fe5a204Remove unecessary iconv_context base classGetting rid of the base class allows us to not rely on pointers anymore. Notice the copy constructor is deleted and the get_context function returns a reference, so we are not copying contexts.
João GouveiaJoão Gouveia
c299478624aiconv_context does not need to be a template classNow that we removed the member variable we don't need iconv_context to be a template class, only the necessary functions. We can also remove the base class, which we'll do in the next commit.
João GouveiaJoão Gouveia
62289af2a08Remove unecessary overloads
João GouveiaJoão Gouveia
dec0d23bd17Remove unecessary iconv_context member variable
João GouveiaJoão Gouveia
3ebb78c1c94Remove virtual append function
João GouveiaJoão Gouveia
88dfa5faacbRemove direct use of icov_context by convert_to
João GouveiaJoão Gouveia
700a50749dbRemove helper class
João GouveiaJoão Gouveia
bcb32876573Remove direct use of the iconv_context classNow, let's remove the usage of the iconv_context class so we can refactor it to a complete global function in the next step
Joost HopmansJoost Hopmans
bc21b31c229MPull request #3458: Validate accepting meeting rooms by checking all occurrences in a datetime rangeMerge in KC/kopanocore from ~MORTEZA/kopanocore:KC-1597 to master * commit 'a961591a3c98d88f67eba026165547c37e7575f7': Validate accepting meeting rooms by checking all occurrences in a datetime rangeKC-1597
Joost HopmansJoost Hopmans
599b2f63a48MPull request #3493: Improve convert_context's performance; Step 2 remove explicit use of convert contextMerge in KC/kopanocore from ~JGOUVEIA/kopanocore:step-2-remove-explicit-use-of-convert-context to master * commit '551efb769a832881a2aa8950c9d15a9ec741860c': Remove persist string code and helper class Remove explicit uses of convert_context Remove convert_context args from WSUtil Remove convert_context argument from TryConvert
Joost HopmansJoost Hopmans
9f839209662Fix indentation of new config values in dagent.cfg
Joost HopmansJoost Hopmans
e20f60f7a2fMPull request #3483: Add config headers that inhibit auto replying and forwarding e-mailsMerge in KC/kopanocore from ~JGOUVEIA/kopanocore:make-auto-reply-and-forward-headers-configurable to master * commit '5538605fe11f21bd17834724f055c60392e20bb8': Add inhibit auto reply and foward to config file Add config headers to inhibit auto reply and forwd
Joost HopmansJoost Hopmans
27c68764d96MPull request #3484: Malformed headers shouldn't crash kopano-icalMerge in KC/kopanocore from ~JGOUVEIA/kopanocore:kopano-ical-fix-terminate-exploit-when-parsing-http-request-headers to master * commit '5fca684b79841ee285e59279d36c17eb2b8499b0': Malformed headers don't crash kopano-ical
Joost HopmansJoost Hopmans
e7c18119d9fMPull request #3492: Improve convert_context's performance; Step 1 - Use std::strings and get rid of persist_codeMerge in KC/kopanocore from ~JGOUVEIA/kopanocore:always-use-std-strings-when-converting to master * commit '159353e6b873d1ade31df7c82c58b77dd67ae9dd': Store the context with unique_ptr Use only std::strings when using convert_context Remove unecessary typedef Guarantee the lifetime of objects by using strings
Joost HopmansJoost Hopmans
3fd8875247cMPull request #3491: pyko: remove unused imports from item.pyMerge in KC/kopanocore from ~JVANDERWAA/kopanocore:pyko_cleanup_includes to master * commit 'e1b2926920d3261507a3825a9887c8d1ccc4b1f7': pyko: remove unused imports from item.py
Joost HopmansJoost Hopmans
6cedad65ca1MPull request #3490: Clean redundant and unused stuffMerge in KC/kopanocore from ~JGOUVEIA/kopanocore:clean-redundant-and-unused-stuff to master * commit 'e5445d2937542e8d084e6eb9f4dbc2e7b0a083bb': Initialize variable Remove redundant bool arg in delete attachment Remove unused delete attachment function Remove unecessary use of dirent layer Remove unused variable in ECFileAttachment2
João GouveiaJoão Gouveia
551efb769a8Remove persist string code and helper classNow that we have removed the explicit use of convert_context we can get rid of the persist code entirely along with its helper class. No more pointers in convert_context.
João GouveiaJoão Gouveia
a5f356b2358Remove explicit uses of convert_context
João GouveiaJoão Gouveia
dcb438b6e91Remove convert_context args from WSUtil
João GouveiaJoão Gouveia
01c62e14808Remove convert_context argument from TryConvert
João GouveiaJoão Gouveia
159353e6b87Store the context with unique_ptrUsing raw pointers is discouraged.
João GouveiaJoão Gouveia
9f2c99c6e20Use only std::strings when using convert_context
João GouveiaJoão Gouveia
121676a62b3Remove unecessary typedef
João GouveiaJoão Gouveia
9435449defeGuarantee the lifetime of objects by using stringsInstead of having a copy of the char pointers to perstit the objects we should use strings to guarantee they are only destroyed when the convert_context goes out of scope.
Jelle van der WaaJelle van der Waa
e1b2926920dpyko: remove unused imports from item.pyAfter removing the deprecation warning for filtered_html the imports where not cleaned up.
João GouveiaJoão Gouveia
e5445d29375Initialize variable
João GouveiaJoão Gouveia
569387f4a44Remove redundant bool arg in delete attachment
João GouveiaJoão Gouveia
689710d12ccRemove unused delete attachment function
João GouveiaJoão Gouveia
88007ba2853Remove unecessary use of dirent layer
João GouveiaJoão Gouveia
bfbe6a3a526Remove unused variable in ECFileAttachment2files_v2 do not support compression making the argument redundant
João GouveiaJoão Gouveia
5fca684b798Malformed headers don't crash kopano-icalFixes an exploit where a malformed header could lead kopano-ical to crash. Reference: https://www.openwall.com/lists/oss-security/2021/04/02/1
João GouveiaJoão Gouveia
5538605fe11Add inhibit auto reply and foward to config fileReferences: KC-1525KC-1525
João GouveiaJoão Gouveia
f06c66d2ef5Add config headers to inhibit auto reply and forwdThis creates two new configurations for users to add a list of headers that inhibit auto replying and auto forwarding e-mails. Caveat: Previous algorithm was using a hash map which provided better complexity. To simplify the algorithm this is now done with vectors however I do not expect it to have any noticable impact due to them have a relatively small size. We can always improve it if necess...KC-1525
Jelle van der WaaJelle van der Waa
66a6a521972libserver: constify cmdutil functions
Jelle van der WaaJelle van der Waa
858c2c6d1c9common: remove unused vOptionsFiltered
Jelle van der WaaJelle van der Waa
09854509a7fpyko: remove unused table variable
Joost HopmansJoost Hopmans
3e6d3cbc161MPull request #3482: Subscription folder typesMerge in KC/kopanocore from ~JVANDERWAA/kopanocore:subscription_folder_types to master * commit 'f7bfe41c354ad5ae86f0a7c734d5c05032a04885': pyko: Add missing folder types for notes/tasks pyko: add notes/tasks folder types
Joost HopmansJoost Hopmans
d6a42e39cb8MPull request #3480: Vcard bdayMerge in KC/kopanocore from ~JVANDERWAA/kopanocore:vcard_bday to master * commit '6ffe0ea3d3160b8264ca50b3c6fad097857eb606': test: append classNames for libicalmapi, spooler and gateway libicalmapi: use constants for vcard properties libicalmapi: add tests for Company and DateFields libicalmapi: import department/company name correctly libicalmapi: fix incomplete conversion from wcha...
Joost HopmansJoost Hopmans
93e9e5fe328MPull request #3478: backup: compact berkely db after purgeMerge in KC/kopanocore from ~JVANDERWAA/kopanocore:KC-1970 to master * commit '60cf8fa2a734099c3fe4fa0142aa443e4c984af4': backup: compact berkely db after purgeKC-1970
Jelle van der WaaJelle van der Waa
f7bfe41c354pyko: Add missing folder types for notes/tasksPython-kopano was previously unaware of other folder types then mail, contacts and calendar.
Jelle van der WaaJelle van der Waa
7073b549515pyko: add notes/tasks folder typesAdd missing notes/tasks folder types for the Folder object. These are required to filter ICS notification objects on folder type and to by default get notifications for tasks/notes.
Morteza NourelahiAlamdari Morteza NourelahiAlamdari
a961591a3c9Validate accepting meeting rooms by checking all occurrences in a datetime rangeWhen a new room suggested for an event, "mr-accept" should validation it by checking all occurrences in a datetime range to see it has conflicts with already reserved rooms or not.