108 Commits

Author SHA1 Message Date
f6077da614 Merge branch 'master' into uikit 2021-01-25 17:59:14 +01:00
499db7e3eb fixed: session logger didn't have 'cur' and 'locale' pointers set
but this is a temporary fix, the session logger will be moved to Session class
2021-01-25 17:55:07 +01:00
50da49a3ed added uikit markup for adduser winix function 2021-01-25 17:17:54 +01:00
6afd5c637e added: in account winix function: links to locale and timezone 2021-01-25 16:23:13 +01:00
31a6aac9d3 added uikit markup for locale winix function 2021-01-25 16:15:55 +01:00
3c3660914f added uikit markup for timezone winix function 2021-01-25 16:10:42 +01:00
cd0ae231dc added uikit markup for account winix function 2021-01-25 15:57:37 +01:00
a8bc741883 added uikit markup for vim editor (wymeditor) 2021-01-25 14:34:35 +01:00
05b3525863 changed: version to 0.7.1 2021-01-25 13:14:16 +01:00
337f563bd4 changed html markup for tinymce and added support for 5.6.2 version 2021-01-22 16:56:51 +01:00
c9fe09ebe3 updated locale files 2021-01-22 14:18:50 +01:00
db1c63a350 added html/index_bottom_adder.html template - at the moment empty,
will be used at the bottom of an index template - before </body> tag
2021-01-22 11:50:37 +01:00
7cc2dcd1fc jquery-file-upload updated to 10.31.0 version 2021-01-22 11:50:28 +01:00
bcde392ce3 updated translations 2021-01-21 19:22:26 +01:00
8d046f6280 added UIkit markup for ckeditor winix function 2021-01-21 19:17:33 +01:00
9a6696699f added UIkit markup for emacs winix function 2021-01-21 19:17:06 +01:00
56f2eec597 CodeMirror editor updated to version 5.59.2 - it is used in emacs winix function 2021-01-21 19:08:48 +01:00
d29b33532d added UIkit markup for login winix function 2021-01-21 17:13:27 +01:00
a16e82bf54 updated .gitignore 2021-01-21 17:12:56 +01:00
46c17cc441 added UIkit https://getuikit.com front-end framework to index_head_functions_add.html and index.html 2021-01-21 17:10:04 +01:00
2099092e16 updated .gitignore 2021-01-21 17:08:05 +01:00
88b7517337 dodany plik .gitignore 2021-01-21 11:35:40 +01:00
619236329c Makefile.dep
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1223 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-09-26 18:25:21 +00:00
76160a5ba6 Makefile deps
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1219 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-09-25 16:25:44 +00:00
e95f32231a fixed: FileLog::get_local_date we need to synchronize when using time_zones pointer
(FileLog::get_local_date is used by Log::PrintDate() and Log of course can be used from different threads)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1218 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-09-25 16:25:20 +00:00
be81307faa Makefiles deps
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1199 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-08-20 12:24:22 +00:00
177e58da4e changed: if there is no body we do not parse application/json to space
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1183 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-25 00:51:51 +00:00
4c2efc08fd fixed: permissions to symlinks and directories with redirect flag were incorrectly checked
(there was no session set and the request was treated the same as from a not logged user)
fixed: in BaseThread there was used 'log' in the main thread (this logger is only for the other thread)
added: in BaseThread we have a main_log now - logger which puts to the main log buffer from the main thread




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1182 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-19 18:08:09 +00:00
ae03922491 seo plugin: added calling WINIX_FILE_CHANGED
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1180 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-14 13:46:40 +00:00
ab005118ba added: a new plugin: seo
new winix function: "seo", it allowes to edit subject, description and keywords for a page
description and keywords are stored in meta



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1179 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-14 13:33:40 +00:00
eec8635af4 changed: templates/item.cpp to use last_item instead of item
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1178 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-14 13:31:35 +00:00
5060997d2a Makefile.dep
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1176 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-07 18:02:52 +00:00
0ac5a21a14 Makefile.dep
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1172 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-06 18:19:29 +00:00
def0f8d144 merge from branch 0.7.x:
- initial support for morm
- added: WinixBase, WinixModel, WinixSystem, WinixRequest
- logger moved to pikotools




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1171 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-03-06 11:53:28 +00:00
8895f0dcac - json_generic_serializer was not set when there was a redirect
- if there is a redirect and the json return answer is requested
  then we send 'redirect_to' field in 'info' space




git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1169 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-02-19 10:36:20 +00:00
4f8db81c85 added to Locale:
const std::wstring & GetReplace(const wchar_t * key, Types ... types)
key is a string pattern which has %0, %1 parameters which will be replaced with 'types'




git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1164 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-01-07 03:32:17 +00:00
aa388e248d fixed: crash in thread plugin
ThreadInfo was not correctly initialized (plugin pointer was null)
added to PluginInfo: set_dependency_for(WinixModel * winix_model)




git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1162 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-01-02 11:33:19 +00:00
e5d7403c54 Makefile.dep
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1161 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-01-02 09:12:42 +00:00
4f57d6134c fixed: in Templates: TemplatesFunctions::plugin was not set
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1160 e52654a7-88a9-db11-a3e9-0013d4bc506e
2019-01-02 04:36:24 +00:00
03f6b54a5b Makefile dep
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1158 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-24 17:09:48 +00:00
63ef007ca1 changed: class Cur -> struct Cur in plugin.h
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1154 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-23 18:34:01 +00:00
603e0679e7 Makefiles: added path to morm/src to -I flags
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1152 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-23 18:28:15 +00:00
b90445de4a updated to the new pikotools api - we have a logger for morm and ezc
pikotools has now Log and FileLog classes
which are base classes for winix Log and FileLog classes




git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1151 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-23 17:53:43 +00:00
491dd27ebf some work in the new api:
- log_level and save_each_line moved from Log to FileLog
- other fixes in loggers
- DirContainer from Dirs and LoadAvg had no dependencies set




git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1148 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-21 22:53:24 +00:00
89d303f375 some work on dependency injection
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1147 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-21 17:51:15 +00:00
a2ffc1e81c start working on 0.7.x branch
- added FileLog which stores content to the file log
- now Log is only a wrapper - it puts messages to the local buffer and when logsave is used then the buffer is put to FileLog
- new base classes:
  WinixBase (Log, Config*, Synchro*)
  WinixModel : public WinixBase (morm::ModelConnector*, Plugin*)
  WinixSystem : public WinixModel (System*)
  WinixRequest : public WinixSystem (SLog, Cur*)
- singletons: log, slog, plugin are depracated - now references to them are in base classses (WinixBase, WinixModel)
- DbBase,  DbConn and Db are depracated - now we are using Morm project (in WinixModel there is a model_connector pointer)
  each thread will have its own ModelConnector





git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1146 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-21 11:03:53 +00:00
a7c47140ae creating branch 0.7.x
git-svn-id: svn://ttmath.org/publicrep/winix/branches/0.7.x@1145 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-21 10:50:34 +00:00
ebd7f85fdb updated: html files for jquery-file-upload
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1143 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-15 17:01:40 +00:00
833c04776f changed Makefile.dep
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1141 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-14 17:15:03 +00:00
919c2f62f5 using PT::IsSubString* methods from pikotools
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1138 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-11-01 00:46:44 +00:00
8f6004d444 removed some IsSubstring* functions
(they are in Pikotools in text/convert.h now)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1135 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-10-29 23:51:11 +00:00
1b8f5dc673 added to HTMLFilter:
- possibility to remove html entities
  method: SkipEntity(bool)




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1132 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-10-24 16:31:42 +00:00
027a8ec428 added to HTMLFilter:
- now we can parse " and ' in html attributes
- we can skip html tags and commentaries, added method:
  void SkipAllTags(bool skip_all_tags, bool skip_commentaries);
- there is virtual method: virtual void ItemFound();
  which is called when a html tag is parsed




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1129 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-10-23 23:28:45 +00:00
d1e7765e98 backend winix
dodanie opisu strefy czasowej dla Warszawy na 2018 rok




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1128 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-10-23 21:00:36 +00:00
2d1b2e6b6e Makefile.dep
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1123 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-07-05 11:15:42 +00:00
350fc551e5 fixed: a default winix function was selected before the mount point was calculated
also a mount point should be cleared (set to an empty mount point) at the
       end of a request




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1117 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-07-02 12:02:19 +00:00
1c05c31721 added: antispam mechanism
each html form has a hidden form_id and counter_id
counter_id on the client side is generated through javascript code
on the server the form_id and counter_id is stored in the session
after sending the html form the server checks the form_id and counter_id




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1116 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-07-02 11:16:36 +00:00
08123fe6ac changed the algorithm how sessions work:
- if the IP is banned or there is no a winix function then we set a temporary session
- else
  if there is a session's cookie sent by the client then:
   - if the cookie is a correct session's cookie then we set the session from the cookie
   - or if the cookie is not a correct session's cookie (e.g. session expired) and the winix function
     requires a cookie then we set a new session
   - or if there is no cookie sent then if a winix function requires a session we create a new session

  if there was an error creating a new session or event counters reach a ban limit then a temporary session will be used





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1115 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-06-20 15:00:02 +00:00
35b93b1655 changed: now we are parsing directories and functions before checking a session
added:   need_session to FunctionBase (true if the functions requires a session)
         default: true
         



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1114 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-06-19 13:52:08 +00:00
436a198c36 changed: using PT::ToLower instead of ToSmall
using PT::ToUpper instead of ToCapital
         using PT::EqualNoCase instead of EqualNoCase
         



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1112 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-05-25 17:22:12 +00:00
aa58faf145 some work on integrating ckeditor4
added ezc blocks: ckeditor_old_browsers_support, ckeditor, ckeditor_small
defined in ckeditor.html



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1109 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-05-10 17:21:39 +00:00
dcc6d35cba added: start integrating CKEditor4
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1108 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-05-09 22:48:14 +00:00
3f29cdc01e changed: config parameters: log_check_proxy_ip_header -> check_proxy_ip_header and log_proxy_ip_header -> proxy_ip_header
added: Request::ip_str (std::wstring) (string of the client's IP address)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1105 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-05-01 11:22:55 +00:00
ba7d55b7c1 added: config parameters:
bool log_check_proxy_ip_header;
       // check whether there is a 'log_proxy_ip_header' header
       // and if so then log the IP address from it
       // default: false

       std::wstring log_proxy_ip_header;
       // proxy header representing the real IP address of a client
       // default: X-Real-IP





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1104 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-05-01 10:43:20 +00:00
6252a0e732 added: Request::post_in (PT::Space) for input when application/json content type is used
from the client




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1102 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-04-26 18:56:31 +00:00
ca14b1a427 added: Request::header_in (Space) http input headers (without cookies)
added: config parameter: log_env_http_variables (bool) (for logging http headers)
added: support for DELETE http method, added method FunctionBase::MakeDelete()
changed: winix version incremented to 0.6.6




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1100 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-04-25 19:48:47 +00:00
b01db89942 added config parameter: db_postgresql_smaller_than_10
default false
if true then we are not using ROW() statements in sql queries




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1099 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-04-25 09:37:56 +00:00
fd421c54e3 changed: Makefile (added Logger from pikotools)
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1096 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-04-23 14:29:58 +00:00
55992b5066 added: std::wstring * Request::ParamValuep(const wchar_t * param_name)
for taking a pointer (can be null) to a parameter value
added: bool System::IsSSLRequired(bool try_to_use_ssl)
       returns true if we should use ssl
       try_to_use_ssl is to be meant: config->use_ssl, config->use_ssl_static, config->use_ssl_common
       



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1094 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-04-22 21:26:56 +00:00
a5dfc9974f added: a virtual dctor() for BaseThread class
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1080 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-04-16 22:44:59 +00:00
7b4a17c934 changed: makefile dep
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1076 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-03-23 19:27:32 +00:00
c2a1097dd5 added: dependency on the morm project
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1074 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-03-13 22:34:59 +00:00
ccf78dcb02 updated to the new Pikotools API
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1071 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-01-06 18:12:53 +00:00
3eff400d88 added: "assume_connection_is_through_ssl" config parameter
winix is testing an environment variable "HTTPS" for the value "on"
       to think that the connection is made via SSL
       you can set assume_connection_is_through_ssl to true for the winix
       to not testing any environment variables but just think the connection
       was made by https (useful when using proxy)
       default: false




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1069 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-01-01 00:14:02 +00:00
5ab816b5be fixed: in progresql 10 we have to use ROW() expression to construct
a row where only one item is given



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1068 e52654a7-88a9-db11-a3e9-0013d4bc506e
2018-01-01 00:12:33 +00:00
e57840faed fixed: static files loaded to /var such as /var/ckeditor_winix.js were not properly returned
(html filter was used but they are mostly javascript files)
added: new Item::ContentType: ct_other
       if an item has ct_other then the html filter is not used for the content





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1040 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-07-13 13:13:56 +00:00
240bf4dc5d changed: the way how raw template is set
option for setting raw template from 'emacs' function has been removed
         now we have index_raw.html template and it can be set from 'template' function
removed: template index_fullscreen.html
changed: some work in miscspace (changed: space_list_tab, space_list_tab_value and space_list_tab_has_next)
fixed:   main index template could not be set through 'template' function





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1039 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-04-04 16:02:36 +00:00
abd1500f07 changed: some refactoring in miscspace
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1036 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-23 15:20:42 +00:00
42144bb31c some refactoring in miscspace(.h|.cpp)
space() renamed to space_value() and takes a third parameter: escape (bool)
space_noescape() removed

space_tab() renamed to space_list_tab()
space_tab_value() renamed to space_list_tab_value()
space_tab_has_next() renamed to space_list_tab_has_next()





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1035 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-22 14:53:43 +00:00
7ed41a03ae fixed: some paths in Makefile.dep were not relative
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1031 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-18 08:56:19 +00:00
1286ceeddf changed: winix project has been moved to 'winixd' subdirectory
in Makefiles we are caltulating relative paths now (by using relative_path program)
	 



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1030 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-17 13:46:20 +00:00
145efe937c moved winix directories to winixdsubdirectory
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1028 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-17 08:26:02 +00:00
ed5adb3f23 moved winix directories to winixd subdirectory
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1027 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-17 08:24:59 +00:00
7d0508961e added: log info about what html template is used
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1026 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-03-16 14:11:47 +00:00
e53e2e6af9 added: some work in RegisterMail plugin
(added looking for files in a config directory)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1024 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-02-03 18:10:40 +00:00
4fafd2a478 changed: Makefile
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1023 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-02-01 11:12:54 +00:00
f15da4d049 fixed: in FunctionParser we do not treat '+' as a space
added: some work in MailRegister plugin
       (adding mails to db, showing mails)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1021 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-02-01 10:15:23 +00:00
057607f9e5 start working on a new plugin: mailregister
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1020 e52654a7-88a9-db11-a3e9-0013d4bc506e
2016-01-31 19:52:17 +00:00
c433b3fd41 updated to the new Ezc API
[ezc stream] has gone, now we have [ezc out] and [out]
the output streams have names now: it's a std::map, before we have a std::vector
and the streams are serialized to "out" space in json
Request::out_streams[] are split into Request::out_main_stream and Request::out_streams class



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1017 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-11-15 22:23:36 +00:00
632b49ab90 fixed: meta and admin meta information were not saved in memory (in system.dirs)
when 'meta' winix function was used
added: to DbItemsQuery
       sort_index_asc and sort_index_date
       different sort type can be made by 'index' and by 'date'
		     



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1013 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-06-16 02:37:07 +00:00
f54df8d600 updated: to the new EZC api (ezc functions can be methods of some special objects)
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1012 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-06-14 18:24:08 +00:00
d8451ceaa0 fixed: checking for ssl redirect
we should take into account cur.request->function->need_ssl too



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1010 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-05-29 09:46:29 +00:00
62f178c2ee fixed: in App::CheckIfNeedSSLredirect()
winix made an incorrect redirect from/to SSL



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1009 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-05-29 09:24:43 +00:00
eb4e7343e7 changed: now 'emacs' winix function uses CodeMirror editor
currently only htmlmixed mode is implemented


git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1008 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-04-18 18:50:39 +00:00
5274e8e8ff added: "server_mode" config option (std::wstring)
you can assign any string to it such as "production" "dev"
       this value is not used by winix itself
       you can refer to it from [server_mode] and [server_mode_is] ezc functions





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1007 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-04-16 14:43:52 +00:00
ae2a885d6c fixed: rm winix function returned incorrectly formated json when using jquery upload (delete file button)
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1006 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-03-20 11:00:22 +00:00
901663b145 updated: to the new ezc api
added:   following ezc functions: ezc_and_not, ezc_any_not, ezc_or_not, ezc_one_not, is, is_not, is_empty, is_not_empty





git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1005 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-03-08 23:22:05 +00:00
dc301d4c50 changed: editors (emacs, ckeditor...) doesn't set an item's title now (if it was empty)
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1003 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-03-02 21:23:29 +00:00
34f0535a26 added: some ezc functions for displaying current date
current_sec, current_min, current_hour, current_year, ...



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1002 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-02-22 10:23:52 +00:00
af0e2a778d changed: some refactoring in System: in IsMemberOfGroup method
changed: some log messages at startup (about non existing empty group for uploads directory)




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1001 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-01-02 08:18:06 +00:00
904f1e70f2 fixed: compiling on Debian (it has no MSG_EOF flag)
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@1000 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-01-02 07:15:22 +00:00
ddf7ef30ad fixed: compiling od Debian
sockaddr_un has no sun_len member



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@999 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-01-02 07:14:15 +00:00
0a43870e76 fixed: the way how winix is closing
beforehand we made a http connection from the special thread
       now we just send a fastcgi packet to the unix socket

       the old way was broken because it requires the http server to work
       and if the operating system is going to shutdown/reboot then the http server
       can be first closed and consequently the winix cannot wake up from
       the main thread (and will be terminated SIGKILL by the os)
       



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@998 e52654a7-88a9-db11-a3e9-0013d4bc506e
2015-01-02 07:01:08 +00:00
f875bd2944 changed: when a client doesn't send a session cookie we can instead of ban just use a temporary session
added: config option:
	// the way we behave when no_session_cookie_treshold limit is exceeded
 	// 0 - if a client doesn't send a session cookie again then use a temporary session
 	//     (other sessions from this IP address are not affected)
 	// 1 - add this IP address to ban list and create a temporary session
 	//     (this will block other sessions from this IP address too)
 	// default: 0
 	int no_session_cookie_ban_mode;




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@996 e52654a7-88a9-db11-a3e9-0013d4bc506e
2014-11-25 12:02:22 +00:00
c9bf20201b added: possibility to ban if a session cookie is incorrect (when we are using encoded cookies)
added:   possibility to ban if a client tries to hijack the session cookie
added:   possibility to ban if a client did not send a session cookie
renamed: ezc functions:
         login_cannot_login -> ipban_is_login_allowed_from_this_ip  (and the return value was changed)
         login_when_available_login -> ipban_current_ip_expires_time
added: config options:
       // after how many broken encoded cookie we should ban the current IP
       // default: 2 (value in the range <0 - 65535>)
       size_t broken_encoded_cookie_treshold;

       // after how many incorrect session identifiers (or session indices) we should ban the current IP
       // do not set this value too low, as people connecting from the same IP address (from behind a NAT)
       // would be banned if they have an old session cookie remembered in the browser
       // default: 128 (value in the range <0 - 65535>)
       size_t session_hijacking_treshold;

       // after how many times a client will be banned if it did not send a session cookie
       // default: 1000 (value in the range <0 - 65535>)
       size_t no_session_cookie_treshold;








git-svn-id: svn://ttmath.org/publicrep/winix/trunk@995 e52654a7-88a9-db11-a3e9-0013d4bc506e
2014-11-24 20:22:30 +00:00
76314aab10 added: possibility to encode the session cookie (added files core/sessionidmanager.h and core/sessionidmanager.cpp)
added: config options:
       // whether or not we should encode the session cookie
       // (we have a special algorithm)
       // default: false
       bool session_cookie_encode;

       // if session_cookie_encode is true then you should provide
       // a file where AES keys will be stored
       std::wstring session_keys_file;

       // each session has an index -- an unsigned int value
       // this value is sent in the cookie string (is encoded)
       // and is incremented when session_index_time_increment time is passed since the last incrementing
       // if a client sent the cookie back the difference between
       // current index and the index in the cookie should be less than or equal to session_allow_index_difference
       // default: 8
       size_t session_allow_index_difference;

       // the time which should pass after the session index is incremented
       // default: 30
       // (session_allow_index_difference + 1) * session_index_time_increment should be less than a time
       // load of a page and all elements on it such as images (of course it depends on client's download too)
       time_t session_index_time_increment;

       // time in seconds after a new AES key pair should be generated
       // we have 256 pairs of keys so this time multiplied by 256 should not be less than
       // the max time of a session (session_remember_max_idle),
       // by default: 256 * 2 days = 512 days = 1.4 year > 3 months (session_remember_max_idle)
       // default: 172800 = 2 days (max: 2678400 = 1 month, min: 10)
       size_t session_key_renew_time;

changed: when printing the time of a request we print only two non-zero digits






git-svn-id: svn://ttmath.org/publicrep/winix/trunk@994 e52654a7-88a9-db11-a3e9-0013d4bc506e
2014-11-22 15:30:56 +00:00
3547d326b8 define AR macro in the main Makefile
this is for pikotools and tito libraries



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@993 e52654a7-88a9-db11-a3e9-0013d4bc506e
2014-11-12 04:14:16 +00:00
0ecb2ac70e added: to HtmlTextStream: Escape(bool) method
now the output html streams can be turn into no-escaping mode
       default true (set when a request is clearing)




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@990 e52654a7-88a9-db11-a3e9-0013d4bc506e
2014-11-06 21:17:41 +00:00
548 changed files with 28593 additions and 13489 deletions

6
.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
.cproject
.project
.settings/
*.o
*.so
winixd/winix

158
Makefile
View File

@@ -1,158 +0,0 @@
# Makefile for GNU make
include Makefile.dep
ifeq ($(OSTYPE), FreeBSD)
CXX = clang++
else
CXX = g++-4.8
endif
ifndef CXXFLAGS
CXXFLAGS = -Wall -O0 -g -fPIC -pthread -std=c++11 -I/usr/local/include -I/usr/include/postgresql -DEZC_USE_WINIX_LOGGER -DEZC_HAS_SPECIAL_STREAM
endif
ifndef CXXWINIXINCLUDEFLAGS
# these flags are used for compiling and making dependencies (make depend)
# it's better to not using any system directories like -I/usr/local/include here
CXXWINIXINCLUDEFLAGS = -I../../winix -I../../../winix -I../../ezc/src -I../../../ezc/src -I../../tito/src -I../../../tito/src -I../../pikotools -I../../../pikotools
endif
ifndef LDFLAGS
LDFLAGS = -L/usr/local/lib
endif
# this macro is used in ezc's Makefile
EZC_USE_WINIX_LOGGER = yes
# for make install
winix_install_dir = /usr/local/winix
export CXX
export CXXFLAGS
export CXXWINIXINCLUDEFLAGS
export LDFLAGS
export EZC_USE_WINIX_LOGGER
all: winix.so plugins winix
winix.so: $(winix.src.files)
@cd core ; $(MAKE) -e
@cd db ; $(MAKE) -e
@cd functions ; $(MAKE) -e
@cd notify ; $(MAKE) -e
@cd templates ; $(MAKE) -e
@cd ../ezc/src ; $(MAKE) -e
@cd ../tito/src ; $(MAKE) -e
@cd ../pikotools ; $(MAKE) -e
$(CXX) -shared -rdynamic -Wl,-whole-archive -o winix.so $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) core/*.o db/*.o functions/*.o templates/*.o notify/*.o ../ezc/src/ezc.a ../tito/src/tito.a ../pikotools/utf8/utf8.a ../pikotools/space/space.a ../pikotools/mainparser/mainparser.a ../pikotools/date/date.a $(LDFLAGS) -lfcgi -lpq -lz -lpthread -lcurl -Wl,-no-whole-archive
winix: winix.so $(winix.src.files)
@cd main ; $(MAKE) -e
$(CXX) -o winix $(CXXFLAGS) $(LDFLAGS) main/*.o winix.so -lfcgi
plugins: FORCE
@cd plugins/stats ; $(MAKE) -e
@cd plugins/thread ; $(MAKE) -e
@cd plugins/ticket ; $(MAKE) -e
@cd plugins/gallery ; $(MAKE) -e
@cd plugins/group ; $(MAKE) -e
@cd plugins/menu ; $(MAKE) -e
@cd plugins/export ; $(MAKE) -e
FORCE:
clean:
@cd core ; $(MAKE) -e clean
@cd db ; $(MAKE) -e clean
@cd functions ; $(MAKE) -e clean
@cd templates ; $(MAKE) -e clean
@cd notify ; $(MAKE) -e clean
@cd plugins/stats ; $(MAKE) -e clean
@cd plugins/thread ; $(MAKE) -e clean
@cd plugins/ticket ; $(MAKE) -e clean
@cd plugins/gallery ; $(MAKE) -e clean
@cd plugins/group ; $(MAKE) -e clean
@cd plugins/menu ; $(MAKE) -e clean
@cd plugins/export ; $(MAKE) -e clean
@cd ../ezc/src ; $(MAKE) -e clean
@cd ../tito/src ; $(MAKE) -e clean
@cd ../pikotools ; $(MAKE) -e clean
@cd main ; $(MAKE) -e clean
rm -f winix.so
rm -f winix
depend:
@cd core ; $(MAKE) -e depend
@cd db ; $(MAKE) -e depend
@cd functions ; $(MAKE) -e depend
@cd templates ; $(MAKE) -e depend
@cd notify ; $(MAKE) -e depend
@cd plugins/stats ; $(MAKE) -e depend
@cd plugins/thread ; $(MAKE) -e depend
@cd plugins/ticket ; $(MAKE) -e depend
@cd plugins/gallery ; $(MAKE) -e depend
@cd plugins/group ; $(MAKE) -e depend
@cd plugins/menu ; $(MAKE) -e depend
@cd plugins/export ; $(MAKE) -e depend
@cd ../ezc/src ; $(MAKE) -e depend
@cd ../tito/src ; $(MAKE) -e depend
@cd ../pikotools ; $(MAKE) -e depend
@cd main ; $(MAKE) -e depend
echo -n "winix.src.files = " > Makefile.dep
find -E . -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
find -E ../ezc/src -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
find -E ../tito/src -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
find -E ../pikotools -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
install: all
# installing binaries
rm -Rf $(winix_install_dir)/bin
mkdir -p $(winix_install_dir)/bin
cp winix $(winix_install_dir)/bin
cp winix.so $(winix_install_dir)/bin
# etc configs
rm -Rf $(winix_install_dir)/etc
mkdir -p $(winix_install_dir)/etc
cp -rf etc/* $(winix_install_dir)/etc/
# html templates
rm -Rf $(winix_install_dir)/html
mkdir -p $(winix_install_dir)/html
cp -rf html/* $(winix_install_dir)/html/
# txt templates
rm -Rf $(winix_install_dir)/txt
mkdir -p $(winix_install_dir)/txt
cp -rf txt/* $(winix_install_dir)/txt/
# locales
rm -Rf $(winix_install_dir)/locale
mkdir -p $(winix_install_dir)/locale
cp -rf locale/* $(winix_install_dir)/locale/
# plugins
rm -Rf $(winix_install_dir)/plugins
mkdir -p $(winix_install_dir)/plugins
find plugins/ -name "*.so" | xargs -I foo cp foo $(winix_install_dir)/plugins/
# deleting subversion directories
find $(winix_install_dir) -type d -name ".svn" | xargs -I foo rm -fr foo
# removing privileges for others
find $(winix_install_dir) -exec chmod o-r,o-x,o-w "{}" "+"

File diff suppressed because one or more lines are too long

View File

@@ -1,19 +0,0 @@
include Makefile.o.dep
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
o = acceptbaseparser.o app.o basethread.o bbcodeparser.o compress.o config.o crypt.o dircontainer.o dirs.o groups.o htmlfilter.o httpsimpleparser.o image.o ipbancontainer.o item.o job.o lastcontainer.o loadavg.o lock.o log.o misc.o mount.o mountparser.o mounts.o plugin.o plugindata.o postmultiparser.o rebus.o request.o run.o session.o sessioncontainer.o sessionmanager.o sessionparser.o slog.o synchro.o system.o threadmanager.o timezone.o timezones.o user.o users.o

View File

@@ -1,487 +0,0 @@
/*
* This file is a part of Winix
* and is distributed under the 2-Clause BSD licence.
* Author: Tomasz Sowa <t.sowa@ttmath.org>
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
#include "log.h"
#include <ctime>
#include <string.h>
#include "utf8/utf8.h"
#include "timezones.h"
namespace Winix
{
Log::Log()
{
log_level = 1;
current_level = 100; // nothing to log (call Init() first)
request = 0;
max_requests = 1;
lines = 0;
max_lines = 5000;
log_file_open = false;
time_zones = 0;
}
Log::~Log()
{
SaveLogAndClear();
}
void Log::SetTimeZones(TimeZones * ptime_zones)
{
time_zones = ptime_zones;
}
int Log::LogLevel()
{
return log_level;
}
void Log::Init(int log_level_, bool save_each_line_, const std::wstring & log_file_, bool log_std, int log_max_requests)
{
log_level = log_level_;
log_stdout = log_std;
max_requests = log_max_requests;
save_each_line = save_each_line_;
PT::WideToUTF8(log_file_, log_file);
// don't open the file here
// because it would be created with the root as an owner
}
void Log::OpenFile()
{
if( !log_file.empty() )
{
file.open( log_file.c_str(), std::ios_base::out | std::ios_base::app );
log_file_open = true;
}
}
void Log::PrintDate(const PT::Date & date, size_t time_zone_id)
{
if( time_zones )
{
TimeZone * tz = time_zones->GetZone(time_zone_id);
if( tz )
{
PT::Date local_date = tz->ToLocal(date);
log << local_date;
}
else
{
(*this) << date << " UTC"; // unknown time zone identifier
}
}
else
{
(*this) << date << " UTC"; // time_zones object was not set
}
}
Log & Log::operator<<(const void * s)
{
if( current_level > log_level )
return *this;
buffer << s;
return *this;
}
Log & Log::operator<<(const char * s)
{
if( current_level > log_level )
return *this;
if( !s )
return *this;
buffer << s;
return *this;
}
Log & Log::operator<<(const std::string & s)
{
if( current_level > log_level )
return *this;
buffer << s;
return *this;
}
Log & Log::operator<<(const std::string * s)
{
if( current_level > log_level )
return *this;
buffer << *s;
return *this;
}
Log & Log::operator<<(const wchar_t * s)
{
if( current_level <= log_level )
{
if( s )
buffer << s;
}
return *this;
}
Log & Log::operator<<(const std::wstring & s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(const std::wstring * s)
{
if( current_level <= log_level )
{
buffer << *s;
}
return *this;
}
Log & Log::operator<<(int s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(long s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(char s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(wchar_t s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(size_t s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(double s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(const PT::Space & s)
{
if( current_level <= log_level )
{
buffer << s;
}
return *this;
}
Log & Log::operator<<(const PT::Date & date)
{
if( current_level <= log_level )
{
buffer << date;
}
return *this;
}
Log & Log::operator<<(LogManipulators m)
{
switch(m)
{
case logend:
if( current_level <= log_level )
{
buffer << '\n';
lines += 1;
if( save_each_line )
SaveLogAndClear();
}
break;
case logsave:
SaveLogAndClear();
break;
case logendrequest:
if( ++request >= max_requests || lines > max_lines )
SaveLogAndClear();
break;
case log1:
current_level = 1;
break;
case log2:
current_level = 2;
break;
case log3:
current_level = 3;
break;
case log4:
current_level = 4;
break;
default:
break;
}
return *this;
}
char Log::GetHEXdigit(unsigned char c)
{
if( c < 10 )
return c + '0';
return c - 10 + 'A';
}
void Log::ToHEX(char * buf, unsigned char c)
{
buf[0] = GetHEXdigit(c >> 4);
buf[1] = GetHEXdigit(c & 0xf);
buf[2] = 0;
}
void Log::LogBinary(const char * blob, size_t blob_len)
{
size_t i=0;
char buf[3];
while( i < blob_len )
{
size_t oldi = i;
for(size_t a=0 ; a<16 ; ++a)
{
if( i < blob_len )
{
ToHEX(buf, blob[i]);
buffer << buf << ' ';
++i;
}
else
{
buffer << " ";
}
if( a == 7 )
{
if( i < blob_len )
buffer << "- ";
else
buffer << " ";
}
}
i = oldi;
buffer << ' ';
for(size_t a=0 ; a<16 && i<blob_len ; ++a, ++i)
{
if( blob[i] > 31 && blob[i] < 127 )
buffer << blob[i];
else
buffer << '.';
}
(*this) << logend;
}
}
void Log::LogBinary(const std::string & blob)
{
LogBinary(blob.c_str(), blob.size());
}
void Log::SystemErr(int err)
{
(*this) << "errno: " << err;
const char * err_msg = strerror(err);
if( err_msg )
(*this) << " (" << err_msg << ")";
}
void Log::SaveLogAndClear()
{
SaveLog();
buffer.Clear();
request = 0;
lines = 0;
}
void Log::SaveLog()
{
if( buffer.Str().empty() )
return;
if( log_stdout )
PT::WideToUTF8(buffer.Str(), std::cout);
if( log_file.empty() )
return;
if( !log_file_open || !file )
{
file.close();
file.clear();
OpenFile();
if( !file )
return;
}
PT::WideToUTF8(buffer.Str(), file);
file.flush();
}
} // namespace Winix

View File

@@ -1,199 +0,0 @@
/*
* This file is a part of Winix
* and is distributed under the 2-Clause BSD licence.
* Author: Tomasz Sowa <t.sowa@ttmath.org>
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
#ifndef headerfile_winix_core_log
#define headerfile_winix_core_log
#include <sstream>
#include <fstream>
#include <iostream>
#include <string>
#include "textstream.h"
#include "logmanipulators.h"
#include "textstream/textstream.h"
namespace Winix
{
class TimeZones;
class Log
{
public:
Log();
~Log();
void SetTimeZones(TimeZones * ptime_zones);
void Init(int log_level_, bool save_each_line_, const std::wstring & log_file_, bool log_std, int log_max_requests);
Log & operator<<(const void * s);
Log & operator<<(const char * s);
Log & operator<<(const std::string * s);
Log & operator<<(const std::string & s);
Log & operator<<(const wchar_t * s);
Log & operator<<(const std::wstring * s);
Log & operator<<(const std::wstring & s);
Log & operator<<(int s);
Log & operator<<(long s);
Log & operator<<(char s);
Log & operator<<(wchar_t s);
Log & operator<<(size_t s);
Log & operator<<(double s);
Log & operator<<(const PT::Space & space);
Log & operator<<(LogManipulators m);
Log & operator<<(const PT::Date & date);
void PrintDate(const PT::Date & date, size_t time_zone_id);
template<typename char_type, size_t stack_size, size_t heap_block_size>
Log & operator<<(const PT::TextStreamBase<char_type, stack_size, heap_block_size> & buf);
template<class StringType>
void LogString(const StringType & value, size_t max_size);
void LogBinary(const char * blob, size_t blob_len);
void LogBinary(const std::string & blob);
void SystemErr(int err);
void SaveLog();
void SaveLogAndClear();
int LogLevel();
private:
// time zones for printing the time in the log file
TimeZones * time_zones;
// buffer for the log
TextStream<std::wstring> buffer;
// log lovel from the config file
int log_level;
// current level set by a modifier (e.g. log << log3)
int current_level;
// current request for logging
// starts from zero and incremented after logendrequest modifier
int request;
// how many request to save at once
int max_requests;
// file log
std::string log_file;
std::ofstream file;
// logging to stdout
bool log_stdout;
// how many lines there are in the buffer
int lines;
// is the config file already open
bool log_file_open;
// how many lines can be in the config buffer
// default: 5000
int max_lines;
// whether to save each line (for debug)
bool save_each_line;
void OpenFile();
char GetHEXdigit(unsigned char c);
void ToHEX(char * buf, unsigned char c);
};
template<class StringType>
void Log::LogString(const StringType & value, size_t max_size)
{
size_t min_size = value.size() < max_size ? value.size() : max_size;
if( current_level <= log_level )
{
for(size_t i=0 ; i<min_size ; ++i)
{
if( value[i] < 32 )
buffer << '.';
else
buffer << value[i];
}
}
}
template<typename char_type, size_t stack_size, size_t heap_block_size>
Log & Log::operator<<(const PT::TextStreamBase<char_type, stack_size, heap_block_size> & buf)
{
if( current_level <= log_level )
buffer << buf;
return *this;
}
extern Log log;
extern Log nlog;
} // namespace Winix
// for convenience, we have to use only #include "log.h" in the winix
#include "slog.h"
#endif

View File

@@ -1,641 +0,0 @@
/*
* This file is a part of Winix
* and is distributed under the 2-Clause BSD licence.
* Author: Tomasz Sowa <t.sowa@ttmath.org>
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
#include <sys/stat.h>
#include "sessionmanager.h"
#include "request.h"
#include "log.h"
#include "session.h"
#include "sessionparser.h"
#include "plugin.h"
namespace Winix
{
SessionManager::SessionManager()
{
temporary_session.id = 0;
session = &temporary_session;
session_tab.SetTmpSession(&temporary_session);
// thread work mode
work_mode = 1;
}
void SessionManager::SetCur(Cur * pcur)
{
cur = pcur;
session_tab.SetCur(pcur);
}
void SessionManager::SetConfig(Config * pconfig)
{
config = pconfig;
session_tab.SetConfig(pconfig);
}
void SessionManager::SetSystem(System * psystem)
{
system = psystem;
}
void SessionManager::SetLastContainer(LastContainer * plast_container)
{
last_container = plast_container;
}
void SessionManager::InitBanList()
{
ban_tab.SetMaxSize(config->ban_list_soft_max_size, config->ban_list_max_size);
}
size_t SessionManager::Size()
{
return session_tab.Size();
}
bool SessionManager::IsSession(long id)
{
if( session_tab.FindById(id) == session_tab.End() )
return false;
return true;
}
long SessionManager::CreateSessionId()
{
long id;
// make sure to call std::srand() somewhere at the beginning
// id must be != 0 (0 is reserved)
do
{
if( sizeof(long) == 8 )
{
id = (((unsigned long)std::rand()) << 32) + std::rand();
}
else
{
id = std::rand();
}
id += std::time(0);
if( id < 0 )
id = -id;
}
while( id == 0 ); // 0 reserved for a temporary session
return id;
}
void SessionManager::CreateSession()
{
int attempts = 100;
SessionContainer::Iterator i = session_tab.End();
if( config->session_max == 0 || session_tab.Size() < config->session_max )
{
for( ; i == session_tab.End() && attempts > 0 ; --attempts )
{
long id = CreateSessionId();
i = session_tab.AddSession(id);
}
}
else
{
log << log2 << "SM: sessions limit exceeded (" << config->session_max << ")" << logend;
}
if( i != session_tab.End() )
{
session = &(*i);
session->new_session = true;
session->SetTimesTo(cur->request->start_time);
log << log2 << "SM: created a new session: " << session->id << logend;
}
else
{
// there is a problem with generating a new session id
// we do not set a session cookie
log << log1 << "SM: cannot create a session id (temporary used: with id 0)" << logend;
SetTemporarySession();
}
}
void SessionManager::SetTemporarySession()
{
session = &temporary_session;
session->Clear(false);
session->SetTimesTo(cur->request->start_time);
session->new_session = false; // temporary session was initialized at the beginning
}
bool SessionManager::SetSessionFromCookie(const std::wstring & cookie)
{
long id = Tol(cookie.c_str());
SessionContainer::Iterator s = session_tab.FindById(id);
if( s == session_tab.End() || s->remove_me )
return false;
// that session is in the table
session = &(*s);
session->new_session = false;
session->last_time = cur->request->start_time;
session->last_date = cur->request->start_time;
if( cur->request->method == Request::get )
session->last_time_get = cur->request->start_time;
log << log2 << "SM: session: " << session->id;
if( session->puser )
log << log2 << ", user: " << session->puser->name << ", id: " << session->puser->id;
log << log2 << logend;
return true;
}
void SessionManager::SetSession()
{
current_ip_ban = ban_tab.FindIP(cur->request->ip);
if( current_ip_ban && current_ip_ban->IsIPBanned() )
{
if( current_ip_ban->expires != 0 && cur->request->start_time >= current_ip_ban->expires )
{
log << log2 << "SM: removing a ban from this IP and resetting events counter" << logend;
current_ip_ban->ClearAfterRemovingBan();
}
else
{
log << log2 << "SM: this ip is bannned, using a temporary session" << logend;
SetTemporarySession();
session->ip_ban = current_ip_ban;
return;
}
}
CookieTab::iterator i = cur->request->cookie_tab.find(config->http_session_id_name);
if( i == cur->request->cookie_tab.end() )
{
CreateSession();
}
else
{
if( !SetSessionFromCookie(i->second) )
{
// there is no such a session
// deleting the old cookie
cur->request->cookie_tab.erase(i);
// and creating a new one
CreateSession();
}
}
session->ip_ban = current_ip_ban;
}
Session * SessionManager::FindSession(long id)
{
SessionContainer::Iterator i = session_tab.FindById(id);
if( i != session_tab.End() )
return &*i;
return 0;
}
SessionContainer::Iterator SessionManager::SessionBegin()
{
return session_tab.Begin();
}
SessionContainer::Iterator SessionManager::SessionEnd()
{
return session_tab.End();
}
void SessionManager::DeleteSessions()
{
SessionContainer::Iterator i;
for(i=session_tab.Begin() ; i!=session_tab.End() ; ++i)
{
if( i->puser && !i->remember_me )
{
plugin.Call(&(*i), WINIX_PREPARE_USER_TO_LOGOUT, i->puser);
last_container->UserLogout(i->puser->id, i->id);
}
}
session_tab.Clear();
}
/*
don't change a session's id when a user is logged
the session id is in last_container and the user would not be
correctly removed from the container
*/
bool SessionManager::ChangeSessionId(long old_id)
{
int attempts = 100;
bool changed = false;
long new_id;
SessionContainer::Iterator i = session_tab.FindById(old_id);
if( i != session_tab.End() )
{
for( ; !changed && attempts > 0 ; --attempts )
{
new_id = CreateSessionId();
changed = session_tab.ChangeSessionId(i, new_id);
}
if( changed )
plugin.Call(&(*i), WINIX_SESSION_CHANGED_ID, old_id, new_id);
else
log << log1 << "SM: I cannot create a new session id (still uses old one)" << logend;
}
else
{
log << log2 << "SM: there is no a session with id: " << old_id << logend;
}
return changed;
}
void SessionManager::InitTmpSession()
{
Session * old_session = cur->session;
log << log4 << "SM: initializing temporary session" << logend;
cur->session = &temporary_session;
plugin.Call(WINIX_SESSION_CREATED);
cur->session = old_session;
}
void SessionManager::UninitTmpSession()
{
Session * old_session = cur->session;
log << log4 << "SM: uninitializing temporary session" << logend;
cur->session = &temporary_session;
cur->session->plugin_data.DeleteAll(); // this will call plugin.Call(WINIX_PLUGIN_SESSION_DATA_REMOVE);
cur->session->plugin_data.Resize(0);
cur->session = old_session;
}
void SessionManager::LoadSessions()
{
SessionParser sp;
SessionContainer::Iterator i;
// sessions will be overwritten (pointers are invalidated)
cur->session = &temporary_session;
sp.SetUsers(&system->users);
sp.Parse(config->session_file, session_tab);
for(i=session_tab.Begin() ; i != session_tab.End() ; ++i)
{
i->plugin_data.Resize(plugin.Size());
plugin.Call(&(*i), WINIX_SESSION_CREATED);
/*
!! IMPROVE ME
we do not add it to the last_container (we don't have IP address stored yet)
*/
if( i->puser )
plugin.Call(&(*i), WINIX_USER_LOGGED);
}
cur->session = &temporary_session;
}
void SessionManager::SaveSessions()
{
char file_path[WINIX_OS_PATH_SIZE];
if( config->session_file.empty() )
return;
if( !WideToUTF8(config->session_file, file_path, WINIX_OS_PATH_SIZE) )
return;
std::ofstream file(file_path);
if( !file )
{
log << log1 << "SM: cannot open the session file for writing - sessions lost" << logend;
return;
}
log << log2 << "SM: saving sessions" << logend;
long len = 0;
SessionContainer::Iterator i = session_tab.Begin();
for( ; i!=session_tab.End() ; ++i )
{
if( i->id != 0 && i->puser && !i->remove_me )
{
file << i->id << ' ' << i->puser->id << ' ' << i->remember_me << ' ';
file << (long)i->start_time << ' ' << (long)i->last_time << std::endl;
++len;
}
}
file.close();
chmod(file_path, 0600);
log << log2 << "SM: saved " << len << " session(s)" << logend;
}
Session * SessionManager::GetTmpSession()
{
return &temporary_session;
}
Session * SessionManager::GetCurSession()
{
return session;
}
// returns how many sessions was marked to remove
size_t SessionManager::MarkAllSessionsToRemove(long user_id)
{
size_t how_many = 0;
SessionContainer::Iterator i;
for(i=session_tab.Begin() ; i!=session_tab.End() ; ++i)
{
if( i->puser && i->puser->id == user_id )
{
plugin.Call(&(*i), WINIX_PREPARE_USER_TO_LOGOUT, i->puser);
last_container->UserLogout(i->puser->id, i->id);
i->remove_me = true;
i->puser = 0;
how_many += 1;
}
}
return how_many;
}
IPBan & SessionManager::AddIPToBanList(int ip)
{
return ban_tab.AddIP(ip);
}
size_t SessionManager::BanListSize()
{
return ban_tab.Size();
}
IPBan & SessionManager::GetIPBan(size_t index)
{
return ban_tab.GetIPBan(index);
}
void SessionManager::RemoveIPBan(int ip)
{
ban_tab.RemoveIP(ip);
}
void SessionManager::ClearIPBanList()
{
ban_tab.Clear();
}
/*
*
*
* sessions gc (second thread)
* sessions are only removed here
* SessionContainer::IndexId can be removed from the other thread
* (when ChangeSessionId() method is called)
*
*/
void SessionManager::Work()
{
bool exit = false;
SessionContainer::Iterator i;
deleted = 0;
Lock();
i = session_tab.Begin();
Unlock();
while( !exit )
{
Lock();
CheckWheterIPListIsSorted();
CheckSession(i);
exit = synchro->was_stop_signal;
Unlock();
}
}
// objects locked
void SessionManager::CheckWheterIPListIsSorted()
{
if( !ban_tab.IsSorted() )
{
log << log4 << "SM: sorting the ban list" << logend;
ban_tab.Sort();
}
}
// it's called from the other thread (with Lock and Unlock)
void SessionManager::CheckSession(SessionContainer::Iterator & i)
{
const int deleted_max_at_once = 10;
if( i == session_tab.End() )
{
if( deleted > 0 )
{
deleted = 0;
log << logsave;
}
i = session_tab.Begin();
WaitForSignalSleep(10);
}
else
{
if( i->remove_me || IsSessionOutdated(*i) )
{
Session * ses = &(*i);
++i;
DeleteSession(ses);
++deleted;
}
else
{
++i;
}
if( deleted >= deleted_max_at_once )
{
log << logsave;
WaitForSignalSleep(1);
deleted = 0;
}
}
}
// it's called from the other thread (with Lock and Unlock)
bool SessionManager::IsSessionOutdated(const Session & s) const
{
bool outdated;
if( s.remember_me )
{
outdated = s.last_time < std::time(0) - config->session_remember_max_idle;
}
else
{
outdated = s.last_time < std::time(0) - config->session_max_idle;
}
return outdated;
}
// it's called from the other thread (with Lock and Unlock)
void SessionManager::DeleteSession(Session * del_session)
{
if( del_session->puser )
{
plugin.Call(del_session, WINIX_PREPARE_USER_TO_LOGOUT, del_session->puser);
last_container->UserLogout(del_session->puser->id, del_session->id);
del_session->puser = 0;
}
long id = del_session->id;
plugin.Call(del_session, WINIX_PREPARE_SESSION_TO_REMOVE);
session_tab.EraseById(del_session->id);
plugin.Call((Session*)0, WINIX_SESSION_REMOVED, id);
}
/*
*
*
* end of sessions gc
*
*
*/
} // namespace Winix

View File

@@ -1,19 +0,0 @@
include Makefile.o.dep
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

View File

@@ -1,74 +0,0 @@
# DO NOT DELETE
db.o: db.h dbbase.h dbconn.h dbtextstream.h ../../winix/core/textstream.h
db.o: ../../winix/core/misc.h ../../winix/core/item.h
db.o: ../../pikotools/space/space.h ../../pikotools/textstream/types.h
db.o: ../../pikotools/date/date.h ../../winix/core/requesttypes.h
db.o: ../../pikotools/textstream/textstream.h
db.o: ../../pikotools/convert/convert.h ../../pikotools/convert/inttostr.h
db.o: ../../pikotools/membuffer/membuffer.h
db.o: ../../pikotools/textstream/types.h ../../pikotools/utf8/utf8.h
db.o: ../../winix/core/winix_const.h ../../winix/core/error.h
db.o: ../../pikotools/space/spaceparser.h ../../pikotools/space/space.h
db.o: dbitemquery.h ../../winix/core/item.h dbitemcolumns.h
db.o: ../../winix/core/user.h ../../winix/core/group.h
db.o: ../../winix/core/dircontainer.h ../../winix/core/ugcontainer.h
db.o: ../../winix/core/log.h ../../winix/core/textstream.h
db.o: ../../winix/core/logmanipulators.h ../../winix/core/slog.h
db.o: ../../winix/core/cur.h ../../winix/core/request.h
db.o: ../../winix/core/error.h ../../winix/core/config.h
db.o: ../../winix/core/htmlfilter.h ../../winix/templates/htmltextstream.h
db.o: ../../pikotools/space/spacetojson.h ../../winix/core/session.h
db.o: ../../winix/core/user.h ../../winix/core/plugindata.h
db.o: ../../winix/core/rebus.h ../../winix/core/ipban.h
db.o: ../../winix/core/mount.h ../../winix/templates/locale.h
db.o: ../../winix/core/log.h ../../winix/core/misc.h
dbbase.o: dbbase.h dbconn.h dbtextstream.h ../../winix/core/textstream.h
dbbase.o: ../../winix/core/misc.h ../../winix/core/item.h
dbbase.o: ../../pikotools/space/space.h ../../pikotools/textstream/types.h
dbbase.o: ../../pikotools/date/date.h ../../winix/core/requesttypes.h
dbbase.o: ../../pikotools/textstream/textstream.h
dbbase.o: ../../pikotools/convert/convert.h
dbbase.o: ../../pikotools/convert/inttostr.h
dbbase.o: ../../pikotools/membuffer/membuffer.h
dbbase.o: ../../pikotools/textstream/types.h ../../pikotools/utf8/utf8.h
dbbase.o: ../../winix/core/winix_const.h ../../winix/core/error.h
dbbase.o: ../../pikotools/space/spaceparser.h ../../pikotools/space/space.h
dbbase.o: ../../winix/core/log.h ../../winix/core/misc.h
dbconn.o: dbconn.h dbtextstream.h ../../winix/core/textstream.h
dbconn.o: ../../winix/core/misc.h ../../winix/core/item.h
dbconn.o: ../../pikotools/space/space.h ../../pikotools/textstream/types.h
dbconn.o: ../../pikotools/date/date.h ../../winix/core/requesttypes.h
dbconn.o: ../../pikotools/textstream/textstream.h
dbconn.o: ../../pikotools/convert/convert.h
dbconn.o: ../../pikotools/convert/inttostr.h
dbconn.o: ../../pikotools/membuffer/membuffer.h
dbconn.o: ../../pikotools/textstream/types.h ../../pikotools/utf8/utf8.h
dbconn.o: ../../winix/core/winix_const.h ../../winix/core/log.h
dbconn.o: ../../winix/core/error.h
dbitemcolumns.o: dbitemcolumns.h ../../winix/core/item.h dbbase.h dbconn.h
dbitemcolumns.o: dbtextstream.h ../../winix/core/textstream.h
dbitemcolumns.o: ../../winix/core/misc.h ../../winix/core/item.h
dbitemcolumns.o: ../../pikotools/space/space.h
dbitemcolumns.o: ../../pikotools/textstream/types.h
dbitemcolumns.o: ../../pikotools/date/date.h ../../winix/core/requesttypes.h
dbitemcolumns.o: ../../pikotools/textstream/textstream.h
dbitemcolumns.o: ../../pikotools/convert/convert.h
dbitemcolumns.o: ../../pikotools/convert/inttostr.h
dbitemcolumns.o: ../../pikotools/membuffer/membuffer.h
dbitemcolumns.o: ../../pikotools/textstream/types.h
dbitemcolumns.o: ../../pikotools/utf8/utf8.h ../../winix/core/winix_const.h
dbitemcolumns.o: ../../winix/core/error.h ../../pikotools/space/spaceparser.h
dbitemcolumns.o: ../../pikotools/space/space.h ../../winix/core/log.h
dbitemquery.o: dbitemquery.h ../../winix/core/item.h
dbtextstream.o: dbtextstream.h ../../winix/core/textstream.h
dbtextstream.o: ../../winix/core/misc.h ../../winix/core/item.h
dbtextstream.o: ../../pikotools/space/space.h
dbtextstream.o: ../../pikotools/textstream/types.h
dbtextstream.o: ../../pikotools/date/date.h ../../winix/core/requesttypes.h
dbtextstream.o: ../../pikotools/textstream/textstream.h
dbtextstream.o: ../../pikotools/convert/convert.h
dbtextstream.o: ../../pikotools/convert/inttostr.h
dbtextstream.o: ../../pikotools/membuffer/membuffer.h
dbtextstream.o: ../../pikotools/textstream/types.h
dbtextstream.o: ../../pikotools/utf8/utf8.h ../../winix/core/winix_const.h

View File

@@ -1,19 +0,0 @@
include Makefile.o.dep
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +0,0 @@
<div class="winix">
<h1>{access_denied}</h1>
<p>{access_denied_msg}</p>
</div>

View File

@@ -1,20 +0,0 @@
<div class="winix">
<h1>Account</h1>
[if user_logged]
<p>You are logged as: [user_name]<br>
[if user_super_user]
You are the root
[end]
[# !! IMPROVE ME add info about groups, may other parameters like time zone, language?]
</p>
[else]
<p>You are not logged in.</p>
[end]
</div>

View File

@@ -1,41 +0,0 @@
<div class="winix">
<h1>[if-one user_logged]{adduser_header_add}[else]{adduser_header_register}[end]</h1>
<form id="additem" method="post" action="[doc_base_url][dir]adduser">
<fieldset>
<legend>{adduser_form_legend}</legend>
<p class="withnext">{adduser_login}:</p>
<input class="edit" type="text" name="login" value="[adduser_last_login]">
<p class="withnext">{adduser_password}:</p>
<input class="edit" type="password" name="password" value="">
<p class="withnext">{adduser_confirm_password}:</p>
<input class="edit" type="password" name="passwordconfirm" value="">
[if winix_account_need_email_verification]
<p class="withnext">{adduser_need_email}<br>{adduser_need_email2}:</p>
[else]
<p class="withnext">{adduser_email}:</p>
[end]
<input class="edit" type="text" name="email" value="[adduser_last_email]">
[if user_super_user]
<p>
<input type="checkbox" name="autoactivate" id="autoactivate"><label style="display: inline;" for="autoactivate">{adduser_auto_activate}</label>
</p>
[end]
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input class="submit" type="submit" value="[if-one user_logged]{adduser_submit}[else]{register_user_submit}[end]">
</fieldset>
</form>
</div>

View File

@@ -1,37 +0,0 @@
[if mount_page_arg_is "subject"][if mount_page_arg_is "info"]<h1 class="withinfo">[else]<h1>[end][item_subject]</h1>[end]
[if mount_page_arg_is "info"][include "item_info.html"][end]
[if-one item_filetype_is_image]
<a href="[item_link]"><img class="catimage" [if-no item_has_thumb]height="100"[end] src="[item_link]/download[if item_has_thumb]/thumb[end]" alt="[item_subject]"></a>
[# we use pre.nowinixbreak to tell the html_filter not to put a blank space into those urles]
<div>
<pre class="nowinixbreak">
{cat_image_url}: [item_link]<br>
{cat_image_thumb_url}: [item_link]/-/thumb
</pre>
</div>
[item_print_content]
[else]
[if-no item_filetype_is_none]
{download}: <a href="[item_link]/download" title="[item_subject]">[item_subject]</a>
<div>
<pre class="nowinixbreak">
{cat_file_url}: [item_link]<br>
</pre>
</div>
[item_print_content]
[else]
[item_print_content]
[end]
[end]

View File

@@ -1,71 +0,0 @@
<div class="winix">
[if item_is]<h1>{edit}</h1>[else]<h1>{add}</h1>[end]
<form id="additem" method="post" action="[doc_base_url][dir][if item_is][item_url]/[end]ckeditor">
[if mount_type_is "cms"]
<div class="winix_input_a">
<label for="winix_title_id">{title}:</label>
<input id="winix_title_id" type="text" name="subject" value="[item_subject]">
</div>
<div class="winix_input_a">
<label for="winix_url_id">{suggested_url}:</label>
<input id="winix_url_id" type="text" name="url" value="[item_url]">
</div>
[end]
[if-any mount_type_is "thread" thread_mount_arg_is "subject"]
<div class="winix_input_a">
<label for="winix_title_id">{title}:</label>
<input id="winix_title_id" type="text" name="subject" value="[item_subject]">
</div>
<div class="winix_input_a">
<label for="winix_url_id">{suggested_url}:</label>
<input id="winix_url_id" type="text" name="url" value="[item_url]">
</div>
[end]
<div class="winix_input_a">
[if mount_type_is "cms"]<label for="winix_content_id">{form_emacs_content_cms}</label>[end]
[if mount_type_is "thread"]<label for="winix_content_id">{form_emacs_content_thread}</label>[end]
[if mount_type_is "ticket"]<label for="winix_content_id">{form_emacs_content_ticket}</label>[end]
[# template fun_ls.html uses the name: itemcontent to refer to this textarea item]
<textarea id="winix_content_id" rows="[if mount_type_is "cms"]30[else]10[end]" cols="60" name="itemcontent">[item_content]</textarea>
</div>
<input type="hidden" name="contenttype" value="2">
[if winix_function_param_is "full"]
<script type="text/javascript">CKEDITOR.replace('itemcontent', \{filebrowserUploadUrl: '[doc_base_url][dir]upload?noredirect&ckeditor_upload', filebrowserBrowseUrl: '[doc_base_url][dir]ls?ckeditor_browse&fullscreen', customConfig : '[doc_base_url]/var/ckeditor_full.js' \});</script>
[else]
<script type="text/javascript">CKEDITOR.replace('itemcontent', \{filebrowserUploadUrl: '[doc_base_url][dir]upload?noredirect&ckeditor_upload', filebrowserBrowseUrl: '[doc_base_url][dir]ls?ckeditor_browse&fullscreen', customConfig : '[doc_base_url]/var/ckeditor_winix.js' \});</script>
[end]
[if-no user_logged]
<div class="winix_input_a">
<label for="winix_nick_id">{nick}:</label>
<input id="winix_nick_id" type="text" name="guestname" value="[item_guest_name]">
</div>
<div class="winix_input_a">
<label for="winix_rebus_id">{rebus_how_is_it} [rebus_question]?</p>
<input id="winix_rebus_id" type="text" name="rebus">
</div>
[end]
<input type="submit" value="[if item_is]{change}[else]{add}[end]">
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
</form>
</div>

View File

@@ -1,42 +0,0 @@
<div class="winix">
[if item_is]<h1>{edit}</h1>[else]<h1>{add}</h1>[end]
<form method="post" action="[doc_base_url][dir][if item_is][item_url]/[end]emacs">
<div class="winix_input_a">
<label for="winix_title_id">{title}:</label>
<input id="winix_title_id" type="text" name="subject" value="[item_subject]">
</div>
<div class="winix_input_a">
<label for="winix_url_id">{suggested_url}:</label>
<input id="winix_url_id" type="text" name="url" value="[item_url]">
</div>
[include "fun_emacs_post.html"]
[if-no user_logged]
<div class="winix_input_a">
<label for="winix_nick_id">{nick}:</label>
<input id="winix_nick_id" type="text" name="guestname" value="[item_guest_name]">
</div>
<div class="winix_input_a">
<label for="winix_rebus_id">{rebus_how_is_it} [rebus_question]?</label>
<input id="winix_rebus_id" type="text" name="rebus">
</div>
[end]
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input type="submit" value="[if item_is]{change}[else]{add}[end]">
</form>
</div>

View File

@@ -1,28 +0,0 @@
<div class="winix_input_a">
[if winix_function_is "upload"]
<label for="winix_content_id">{upload_content}</label>
[else]
[if mount_type_is "cms"]<label for="winix_content_id">{form_emacs_content_cms}</label>[end]
[if mount_type_is "thread"]<label for="winix_content_id">{form_emacs_content_thread}</label>[end]
[if mount_type_is "ticket"]<label for="winix_content_id">{form_emacs_content_ticket}</label>[end]
[end]
<textarea id="winix_content_id" rows="[if winix_function_is "upload"]7[else][if mount_type_is "cms"]30[else]10[end][end]" cols="60" name="itemcontent">[item_content]</textarea>
</div>
<div class="winix_input_a">
<label for="winix_contenttype_id">{form_emacs_content_type}</label>
<select name="contenttype" id="winix_contenttype_id">
<option[if item_content_type_is "text"] selected[end] value="0">{form_emacs_content_type_text}</option>
<option[if item_content_type_is "formatted text"] selected[end] value="1">{form_emacs_content_type_formatted_text}</option>
[if user_can_use_html]<option[if item_content_type_is "html"] selected[end] value="2">{form_emacs_content_type_html}</option>[end]
[if user_can_use_bbcode]<option[if item_content_type_is "bbcode"] selected[end] value="3">{form_emacs_content_type_bbcode}</option>[end]
[if user_can_use_raw]<option[if item_content_type_is "raw"] selected[end] value="4">{form_emacs_content_type_raw}</option>[end]
</select>
</div>

View File

@@ -1,36 +0,0 @@
<div class="winix">
<h1>{locale_header}</h1>
[if user_has_correct_locale]
<p>{locale_your_locale}: [user_locale_name]</p>
[else]
<p>{locale_has_incorrect_id}</p>
[end]
<form id="additem" method="post" action="[doc_base_url][dir][if-one item_is][item_url]/[end]locale">
<fieldset>
<legend>{locale_form_legend}</legend>
<p class="withnext">{locale_select}:</p>
[# add to styles]
<select name="localeid" style="width: 250px;">
[for winix_locale_tab]
<option value="[winix_locale_tab_id]" [if cmp [user_locale_id] [winix_locale_tab_id]]selected="selected"[end]>[winix_locale_tab_name]</option>
[end]
</select>
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input class="submit" type="submit" value="{change}">
</fieldset>
</form>
</div>

View File

@@ -1,51 +0,0 @@
<div class="winix">
<h1>{login_header}</h1>
[if-one user_logged]
<p>{logged_as_long}: [user_name]<br>
<a href="[doc_base_url][if-one dir_can_read_exec][dir][if-any item_is item_can_read][item_url]/[end][else]/[end]logout">{logout}</a></p>
[else]
[if login_cannot_login]
<p>{login_cannot_login_from_this_ip}<br>
{login_cannot_login_available} [login_when_available_login]</p>
[else]
<form method="post" action="[login_path]login">
<div class="winix_input_b">
<input type="text" name="login">
</div>
<div class="winix_input_b">
<input type="password" name="password">
</div>
<div class="winix_input_b">
<input id="winix_login_rememberme_id" type="checkbox" name="rememberme">
<label for="winix_login_rememberme_id">{remember_me}</label>
</div>
[if login_should_use_captcha]
<div class="winix_input_a">
<label for="winix_rebus_id">{rebus_how_is_it} [rebus_question]?</label>
<input id="winix_rebus_id" type="text" name="rebus">
</div>
[end]
<input type="submit" value="{button_login}">
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
</form>
[end]
[end]
</div>

View File

@@ -1,22 +0,0 @@
<div>
[if mount_page_arg_is "subject"]
[if mount_page_arg_is "info"]
<h1 class="withinfo">
[else]
<h1>
[end]
[item_subject]
</h1>
[end]
[if mount_page_arg_is "info"]
[include "item_info.html"]
[end]
[item_run]
</div>

View File

@@ -1,35 +0,0 @@
<div class="winix">
<h1>{timezone_header}</h1>
[if user_has_correct_time_zone]
<p>{timezone_your_zone}: [user_time_zone_name] (UTC[user_time_zone_offset_hour_min])</p>
[else]
<p>{timezone_has_incorrect_id}</p>
[end]
<form id="additem" method="post" action="[doc_base_url][dir][if-one item_is][item_url]/[end]timezone">
<fieldset>
<legend>{timezone_form_legend}</legend>
<p class="withnext">{timezone_select}:</p>
[# add to styles]
<select name="timezoneid" style="width: 250px;">
[for winix_tz_tab]
<option value="[winix_tz_tab_id]" [if cmp [user_time_zone_id] [winix_tz_tab_id]]selected="selected"[end]>UTC[winix_tz_tab_offset_hour_min] [winix_tz_tab_name]</option>
[end]
</select>
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input class="submit" type="submit" value="{change}">
</fieldset>
</form>
</div>

View File

@@ -1,53 +0,0 @@
<div class="winix">
[if item_is]<h1>{edit}</h1>[else]<h1>{add}</h1>[end]
<form id="additem" method="post" action="[doc_base_url][dir][if item_is][item_url]/[end]tinymce">
<fieldset>
<legend>{form_emacs_legend}</legend>
[if mount_type_is "cms"]
<p class="withnext">{title}:</p>
<input class="edit" type="text" name="subject" value="[item_subject]">
<p class="withnext">{suggested_url}:</p>
<input class="edit" type="text" name="url" value="[item_url]">
[end]
[if-any mount_type_is "thread" thread_mount_arg_is "subject"]
<p class="withnext">{title}:</p>
<input class="edit" type="text" name="subject" value="[item_subject]">
<p class="withnext">{suggested_url}:</p>
<input class="edit" type="text" name="url" value="[item_url]">
[end]
[if mount_type_is "cms"]<p class="withnext">{form_emacs_content_cms}</p>[end]
[if mount_type_is "thread"]<p class="withnext">{form_emacs_content_thread}</p>[end]
[if mount_type_is "ticket"]<p class="withnext">{form_emacs_content_ticket}</p>[end]
<textarea class="multitext" rows="[if mount_type_is "cms"]30[else]10[end]" cols="60" name="itemcontent">[item_content]</textarea>
<input type="hidden" name="contenttype" value="2">
[if-no user_logged]
<p class="withnext">{nick}:</p>
<input class="edit" type="text" name="guestname" value="[item_guest_name]">
<p class="withnext">{rebus_how_is_it} [rebus_question]?</p>
<input class="edit" type="text" name="rebus">
[end]
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input class="submit" type="submit" value="[if item_is]{change}[else]{add}[end]">
</fieldset>
</form>
</div>

View File

@@ -1,150 +0,0 @@
[if winix_function_param_is "ckeditor_upload"]
<script type="text/javascript">window.parent.CKEDITOR.tools.callFunction([upload_ckeditor_funnum], '[item_link]');</script>
[end]
[if-any-no winix_function_param_is "ckeditor_upload" winix_function_param_is "jquery_upload"]
<div class="winix">
<h1>{upload_header}</h1>
[# the code below are copied from common/fileupload/jquery-ui.html]
[# The file upload form used as target for the file upload widget]
<form id="fileupload" action="[doc_base_url][dir]/upload" method="POST" enctype="multipart/form-data">
[# The fileupload-buttonbar contains buttons to add/delete files and start/cancel the upload]
<div class="fileupload-buttonbar">
<div class="fileupload-buttons">
[# The fileinput-button span is used to style the file input field as button]
<span class="fileinput-button">
<span>{upload_button_add_files}</span>
<input type="file" name="files\[\]" multiple>
</span>
<button type="submit" class="start">{upload_button_start_upload}</button>
<button type="reset" class="cancel">{upload_button_cancel_upload}</button>
<button type="button" class="delete">{upload_button_delete}</button>
<input type="checkbox" class="toggle">
[# The global file processing state]
<span class="fileupload-process"></span>
</div>
[# The global progress state]
<div class="fileupload-progress fade" style="display:none">
[# The global progress bar]
<div class="progress" role="progressbar" aria-valuemin="0" aria-valuemax="100"></div>
[# The extended global progress state]
<div class="progress-extended">&nbsp;</div>
</div>
</div>
[# The table listing the files available for upload/download]
<table role="presentation"><tbody class="files"></tbody></table>
</form>
[# The blueimp Gallery widget]
<div id="blueimp-gallery" class="blueimp-gallery blueimp-gallery-controls" data-filter=":even">
<div class="slides"></div>
<h3 class="title"></h3>
<a class="prev"></a>
<a class="next"></a>
<a class="close">×</a>
<a class="play-pause"></a>
<ol class="indicator"></ol>
</div>
[# The template to display files available for upload]
<script id="template-upload" type="text/x-tmpl">
\{% for (var i=0, file; file=o.files\[i\]; i++) \{ %\}
<tr class="template-upload fade">
<td>
<span class="preview"></span>
</td>
<td>
<p class="name">\{%=file.name%\}</p>
<strong class="error"></strong>
</td>
<td>
<p class="size">{upload_button_processing}</p>
<div class="progress"></div>
</td>
<td>
\{% if (!i && !o.options.autoUpload) \{ %\}
<button class="start" disabled>{upload_button_start}</button>
\{% \} %\}
\{% if (!i) \{ %\}
<button class="cancel">{upload_button_cancel}</button>
\{% \} %\}
</td>
</tr>
\{% \} %\}</script>
[# The template to display files available for download]
<script id="template-download" type="text/x-tmpl">
\{% for (var i=0, file; file=o.files\[i\]; i++) \{ %\}
<tr class="template-download fade">
<td>
<span class="preview">
\{% if (file.thumbnailUrl) \{ %\}
<a href="\{%=file.url%\}" title="\{%=file.name%\}" download="\{%=file.name%\}" data-gallery><img src="\{%=file.thumbnailUrl%\}"></a>
\{% \} %\}
</span>
</td>
<td>
<p class="name">
<a href="\{%=file.url%\}" title="\{%=file.name%\}" download="\{%=file.name%\}" \{%=file.thumbnailUrl?'data-gallery':''%\}>\{%=file.name%\}</a>
</p>
\{% if (file.error) \{ %\}
<div><span class="error">{upload_error}</span> \{%=file.error%\}</div>
\{% \} %\}
</td>
<td>
<span class="size">\{%=o.formatFileSize(file.size)%\}</span>
</td>
<td>
<button class="delete" data-type="\{%=file.deleteType%\}" data-url="\{%=file.deleteUrl%\}"\{% if (file.deleteWithCredentials) \{ %\} data-xhr-fields='\{"withCredentials":true\}'\{% \} %\}>{upload_button_delete}</button>
<input type="checkbox" name="delete" value="1" class="toggle">
</td>
</tr>
\{% \} %\}</script>
<script type="text/javascript">
$('#fileupload button.start').css('display', 'none');
$('#fileupload').fileupload(\{
"url": "[doc_base_url][dir]upload/jquery_upload",
"autoUpload": true
\});
$('#fileupload').fileupload(
'option',
'redirect',
window.location.href.replace(
/\/\[^\/\]*$/,
'/cors/result.html?%s'
));
$("div.winix #fileupload button.cancel").css('display','inline');
[# loading existing files]
[# copied from common/fileupload/js/main.js]
$('#fileupload').addClass('fileupload-processing');
$.ajax(\{
[# // Uncomment the following to send cross-domain cookies:]
[# //xhrFields: \{withCredentials: true\},]
url: $('#fileupload').fileupload('option', 'url'),
dataType: 'json',
context: $('#fileupload')\[0\]
\}).always(function () \{
$(this).removeClass('fileupload-processing');
\}).done(function (result) \{
$(this).fileupload('option', 'done')
.call(this, $.Event('done'), \{result: result\});
\});</script>
</div>
[end]

View File

@@ -1,55 +0,0 @@
<div class="winix">
[if item_is]<h1>{edit}</h1>[else]<h1>{add}</h1>[end]
<form id="additem" method="post" action="[doc_base_url][dir][if item_is][item_url]/[end]vim">
<fieldset>
<legend>{form_emacs_legend}</legend>
[if mount_type_is "cms"]
<p class="withnext">{title}:</p>
<input class="edit" type="text" name="subject" value="[item_subject]">
<p class="withnext">{suggested_url}:</p>
<input class="edit" type="text" name="url" value="[item_url]">
[end]
[if-any mount_type_is "thread" thread_mount_arg_is "subject"]
<p class="withnext">{title}:</p>
<input class="edit" type="text" name="subject" value="[item_subject]">
<p class="withnext">{suggested_url}:</p>
<input class="edit" type="text" name="url" value="[item_url]">
[end]
[if mount_type_is "cms"]<p class="withnext">{form_emacs_content_cms}</p>[end]
[if mount_type_is "thread"]<p class="withnext">{form_emacs_content_thread}</p>[end]
[if mount_type_is "ticket"]<p class="withnext">{form_emacs_content_ticket}</p>[end]
<textarea class="multitext" rows="[if mount_type_is "cms"]30[else]10[end]" cols="60" name="itemcontent">[item_content]</textarea>
<input type="hidden" name="contenttype" value="2">
[if winix_function_param_is "full"]
[else]
[end]
[if-no user_logged]
<p class="withnext">{nick}:</p>
<input class="edit" type="text" name="guestname" value="[item_guest_name]">
<p class="withnext">{rebus_how_is_it} [rebus_question]?</p>
<input class="edit" type="text" name="rebus">
[end]
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input class="submit" type="submit" value="[if item_is]{change}[else]{add}[end]">
</fieldset>
</form>
</div>

View File

@@ -1,24 +0,0 @@
<!DOCTYPE html>
[# minimalistic template]
<html lang="{language}">
<head>
<meta charset="{charset}">
<title>[doc_title]</title>
[include "index_head_functions_add.html"]
</head>
<body>
<div>
[include "slog.html"]
[# each winix function has div.winix in its template defined -- only functions: cat and run don't have div.winix]
[# so you can easly use 'content' with your own template]
[# and when using other winix functions you automatically get proper styling]
[content]
</div>
</body>
</html>

View File

@@ -1,24 +0,0 @@
<!DOCTYPE html>
[# minimalistic template]
<html lang="{language}">
<head>
<meta charset="{charset}">
<title>[doc_title]</title>
[include "index_head_functions_add.html"]
</head>
<body>
<div>
[include "slog.html"]
[# each winix function has div.winix in its template defined -- only functions: cat and run don't have div.winix]
[# so you can easly use 'content' with your own template]
[# and when using other winix functions you automatically get proper styling]
[content]
</div>
</body>
</html>

View File

@@ -1,241 +0,0 @@
[# other stuff needed by a specific function]
[if-one winix_function_is "adduser"
winix_function_is "chmod"
winix_function_is "chown"
winix_function_is "ckeditor"
winix_function_is "cp"
winix_function_is "default"
winix_function_is "download"
winix_function_is "emacs"
winix_function_is "env"
winix_function_is "imgcrop"
winix_function_is "last"
winix_function_is "ln"
winix_function_is "locale"
winix_function_is "login"
winix_function_is "logout"
winix_function_is "ls"
winix_function_is "man"
winix_function_is "meta"
winix_function_is "mkdir"
winix_function_is "mount"
winix_function_is "mv"
winix_function_is "nicedit"
winix_function_is "node"
winix_function_is "passwd"
winix_function_is "priv"
winix_function_is "pw"
winix_function_is "reload"
winix_function_is "rm"
winix_function_is "rmuser"
winix_function_is "sort"
winix_function_is "stat"
winix_function_is "subject"
winix_function_is "template"
winix_function_is "timezone"
winix_function_is "tinymce"
winix_function_is "uname"
winix_function_is "upload"
winix_function_is "uptime"
winix_function_is "vim"
winix_function_is "who"]
<link rel="stylesheet" href="[doc_base_url_common]/winix/winix.css" type="text/css">
[end]
[if winix_function_is "ckeditor"]
<script type="text/javascript" src="[doc_base_url_common]/ckeditor/ckeditor.js"></script>
[end]
[if winix_function_is "tinymce"]
<!--<script type="text/javascript">document.domain = "www.slimaczek.pl";</script>-->
<script type="text/javascript" src="[doc_base_url]/common/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript" src="[doc_base_url]/var/tinymce.js"></script>
[end]
[if winix_function_is "nicedit"]
<script type="text/javascript" src="[doc_base_url_common]/nicedit/nicEdit.js"></script>
[end]
[if winix_function_is "vim"]
[# this editor doesn't work on different domains by default, solution: http://forum.wymeditor.org/forum/viewtopic.php?f=2&t=731&p=2507#p2504 ]
[# you should add one file to winix: wymiframe.html ]
<script type="text/javascript" src="[doc_base_url_common]/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/wymeditor/jquery.wymeditor.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/wymeditor/lang/en.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/wymeditor/skins/default/skin.js"></script>
<link rel="stylesheet" type="text/css" href="[doc_base_url_common]/wymeditor/skins/default/skin.css">
<script type="text/javascript">jQuery(function() \{ jQuery("textarea").wymeditor(\{ basePath: "[doc_base_url_common]/wymeditor/", iframeBasePath: "[doc_base_url]/var/", updateSelector : "form", updateEvent: 'submit' \}); \});</script>
[end]
[if winix_function_is "ticket"]
[# !! dodac lightboxa tylko jesli tickety zawieraja obrazki ]
<!--
[# warning: prototype doesn't work with jquery in clock tickets (in client panel)]
<link rel="stylesheet" href="[doc_base_url_common]/lightbox/lightbox.css" type="text/css" media="screen">
<script src="[doc_base_url_common]/lightbox/js/prototype.js" type="text/javascript"></script>
<script src="[doc_base_url_common]/lightbox/js/scriptaculous.js?load=effects,builder" type="text/javascript"></script>
<script src="[doc_base_url_common]/lightbox/js/lightbox.js" type="text/javascript"></script>
-->
[end]
[if winix_function_is "gallery"]
[if-one gallery_has_not_mount_type gallery_mount_type_arg_is "lightbox"]
<link rel="stylesheet" href="[doc_base_url_common]/lightbox/lightbox.css" type="text/css" media="screen">
<script src="[doc_base_url_common]/lightbox/js/prototype.js" type="text/javascript"></script>
<script src="[doc_base_url_common]/lightbox/js/scriptaculous.js?load=effects,builder" type="text/javascript"></script>
<script src="[doc_base_url_common]/lightbox/js/lightbox.js" type="text/javascript"></script>
[end]
[if-one gallery_mount_type_arg_is "galleria" gallery_mount_type_arg_is "galleriathumb"]
<script type="text/javascript" src="[doc_base_url_common]/jquery-1.4.4.min.js"></script>
<script src="[doc_base_url_common]/aino-galleria/galleria-1.2.2.min.js" type="text/javascript"></script>
[end]
[if-one gallery_mount_type_arg_is "galleria1.2.9" gallery_mount_type_arg_is "galleriathumb1.2.9"]
<script type="text/javascript" src="[doc_base_url_common]/jquery-1.9.1.min.js"></script>
<script src="[doc_base_url_common]/galleria/galleria-1.2.9.min.js" type="text/javascript"></script>
[end]
[end]
[if winix_function_is "upload"]
[# http://blueimp.github.io/jQuery-File-Upload/jquery-ui.html]
[# https://github.com/blueimp/jQuery-File-Upload]
[# we are using the *jQuery UI version* of the plugin]
[# Force latest IE rendering engine or ChromeFrame if installed]
<!--\[if IE\]>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<!\[endif\]-->
[# jQuery UI styles]
[# original http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/dark-hive/jquery-ui.css]
<link rel="stylesheet" href="[doc_base_url_common]/jquery-ui-1.10.4.custom/css/smoothness/jquery-ui-1.10.4.custom.min.css" id="theme">
[if false]
<!-- Demo styles -->
<link rel="stylesheet" href="[doc_base_url_common]/fileupload/css/demo.css">
<!--\[if lte IE 8\]>
<link rel="stylesheet" href="[doc_base_url_common]/fileupload/css/demo-ie8.css">
<!\[endif\]-->
[end]
[# blueimp Gallery styles]
[# original http://blueimp.github.io/Gallery/css/blueimp-gallery.min.css]
<link rel="stylesheet" href="[doc_base_url_common]/gallery-2.15.1/css/blueimp-gallery.min.css">
[# CSS to style the file input field as button and adjust the Bootstrap progress bars]
<link rel="stylesheet" href="[doc_base_url_common]/fileupload/css/jquery.fileupload.css">
<link rel="stylesheet" href="[doc_base_url_common]/fileupload/css/jquery.fileupload-ui.css">
[# CSS adjustments for browsers with JavaScript disabled]
<noscript><link rel="stylesheet" href="[doc_base_url_common]/fileupload/css/jquery.fileupload-noscript.css"></noscript>
<noscript><link rel="stylesheet" href="[doc_base_url_common]/fileupload/css/jquery.fileupload-ui-noscript.css"></noscript>
[# those below can be moved to the bottom of the page (outside of <head>]
[# original //ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js]
<script src="[doc_base_url_common]/jquery-1.11.0.min.js"></script>
[# original //ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js]
<script src="[doc_base_url_common]/jquery-ui-1.10.4.custom/js/jquery-ui-1.10.4.custom.min.js"></script>
[# The Templates plugin is included to render the upload/download listings]
[# original http://blueimp.github.io/JavaScript-Templates/js/tmpl.min.js]
<script src="[doc_base_url_common]/fileupload/others/tmpl.min.js"></script>
[# The Load Image plugin is included for the preview images and image resizing functionality]
[# original http://blueimp.github.io/JavaScript-Load-Image/js/load-image.min.js]
<script src="[doc_base_url_common]/fileupload/others/load-image.min.js"></script>
[# The Canvas to Blob plugin is included for image resizing functionality]
[# original http://blueimp.github.io/JavaScript-Canvas-to-Blob/js/canvas-to-blob.min.js]
<script src="[doc_base_url_common]/fileupload/others/canvas-to-blob.min.js"></script>
[# blueimp Gallery script]
[# original http://blueimp.github.io/Gallery/js/jquery.blueimp-gallery.min.js]
<script src="[doc_base_url_common]/gallery-2.15.1/js/jquery.blueimp-gallery.min.js"></script>
[# The Iframe Transport is required for browsers without support for XHR file uploads]
<script src="[doc_base_url_common]/fileupload/js/jquery.iframe-transport.js"></script>
[# The basic File Upload plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload.js"></script>
[# The File Upload processing plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-process.js"></script>
[# The File Upload image preview & resize plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-image.js"></script>
[# The File Upload audio preview plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-audio.js"></script>
[# The File Upload video preview plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-video.js"></script>
[# The File Upload validation plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-validate.js"></script>
[# The File Upload user interface plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-ui.js"></script>
[# The File Upload jQuery UI plugin]
<script src="[doc_base_url_common]/fileupload/js/jquery.fileupload-jquery-ui.js"></script>
[if false]
[# code from fileupload/js/main.js we are using in fun_upload.html (at the bottom)]
<!-- The main application script -->
<script src="[doc_base_url_common]/fileupload/js/main.js"></script>
[end]
[# The XDomainRequest Transport is included for cross-domain file deletion for IE 8 and IE 9]
<!--\[if (gte IE 8)&(lt IE 10)\]>
<script src="[doc_base_url_common]/fileupload/js/cors/jquery.xdr-transport.js"></script>
<!\[endif\]-->
[end]
[if winix_function_is "sort"]
[if-no item_is]
<script type="text/javascript" src="[doc_base_url_common]/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/jquery-ui-1.8.13/js/jquery-ui-1.8.13.custom.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/sort.js"></script>
[end]
[end]
[if winix_function_is "imgcrop"]
<script type="text/javascript" src="[doc_base_url_common]/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/jcrop-0.9.12/js/jquery.Jcrop.js"></script>
<link type="text/css" rel="stylesheet" href="[doc_base_url_common]/jcrop-0.9.12/css/jquery.Jcrop.css">
[end]
[if winix_has_plugin "stats"]
[include "stats_info.html"]
[end]

View File

@@ -1,19 +0,0 @@
include Makefile.o.dep
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

View File

@@ -1,85 +0,0 @@
# DO NOT DELETE
main.o: ../../winix/core/log.h ../../winix/core/textstream.h
main.o: ../../winix/core/misc.h ../../winix/core/item.h
main.o: ../../pikotools/space/space.h ../../pikotools/textstream/types.h
main.o: ../../pikotools/date/date.h ../../winix/core/requesttypes.h
main.o: ../../pikotools/textstream/textstream.h
main.o: ../../pikotools/convert/convert.h ../../pikotools/convert/inttostr.h
main.o: ../../pikotools/membuffer/membuffer.h
main.o: ../../pikotools/textstream/types.h ../../pikotools/utf8/utf8.h
main.o: ../../winix/core/winix_const.h ../../winix/core/logmanipulators.h
main.o: ../../winix/core/slog.h ../../winix/core/cur.h
main.o: ../../winix/core/request.h ../../winix/core/error.h
main.o: ../../winix/core/config.h ../../pikotools/space/spaceparser.h
main.o: ../../pikotools/space/space.h ../../winix/core/htmlfilter.h
main.o: ../../winix/templates/htmltextstream.h ../../winix/core/textstream.h
main.o: ../../pikotools/space/spacetojson.h ../../winix/core/session.h
main.o: ../../winix/core/user.h ../../winix/core/plugindata.h
main.o: ../../winix/core/rebus.h ../../winix/core/ipban.h
main.o: ../../winix/core/mount.h ../../winix/templates/locale.h
main.o: ../../winix/core/slog.h ../../winix/core/app.h
main.o: ../../winix/core/system.h ../../winix/core/job.h
main.o: ../../winix/core/basethread.h ../../winix/core/synchro.h
main.o: ../../winix/core/dirs.h ../../winix/core/dircontainer.h
main.o: ../../winix/db/db.h ../../winix/db/dbbase.h ../../winix/db/dbconn.h
main.o: ../../winix/db/dbtextstream.h ../../winix/core/error.h
main.o: ../../winix/db/dbitemquery.h ../../winix/core/item.h
main.o: ../../winix/db/dbitemcolumns.h ../../winix/core/user.h
main.o: ../../winix/core/group.h ../../winix/core/dircontainer.h
main.o: ../../winix/core/ugcontainer.h ../../winix/core/log.h
main.o: ../../winix/notify/notify.h ../../winix/notify/notifypool.h
main.o: ../../winix/templates/patterns.h ../../winix/templates/locale.h
main.o: ../../winix/templates/localefilter.h ../../ezc/src/ezc.h
main.o: ../../ezc/src/generator.h ../../ezc/src/blocks.h
main.o: ../../ezc/src/cache.h ../../ezc/src/functions.h
main.o: ../../ezc/src/funinfo.h ../../ezc/src/pattern.h
main.o: ../../ezc/src/patternparser.h ../../winix/notify/notifythread.h
main.o: ../../winix/core/basethread.h ../../winix/notify/templatesnotify.h
main.o: ../../winix/core/config.h ../../winix/core/users.h
main.o: ../../winix/core/ugcontainer.h ../../winix/core/lastcontainer.h
main.o: ../../winix/core/mounts.h ../../winix/core/mountparser.h
main.o: ../../winix/core/crypt.h ../../winix/core/run.h
main.o: ../../winix/core/users.h ../../winix/core/groups.h
main.o: ../../winix/core/group.h ../../winix/core/loadavg.h
main.o: ../../winix/core/image.h ../../winix/core/threadmanager.h
main.o: ../../winix/core/timezones.h ../../winix/core/timezone.h
main.o: ../../winix/core/sessionmanager.h ../../winix/core/sessioncontainer.h
main.o: ../../winix/core/ipbancontainer.h ../../winix/functions/functions.h
main.o: ../../winix/functions/functionbase.h ../../winix/core/request.h
main.o: ../../winix/core/system.h ../../winix/core/synchro.h
main.o: ../../winix/functions/functionparser.h ../../winix/core/cur.h
main.o: ../../winix/functions/account.h ../../winix/functions/adduser.h
main.o: ../../winix/functions/cat.h ../../winix/functions/chmod.h
main.o: ../../winix/functions/privchanger.h ../../winix/functions/chown.h
main.o: ../../winix/functions/ckeditor.h ../../winix/functions/cp.h
main.o: ../../winix/functions/default.h ../../winix/functions/download.h
main.o: ../../winix/functions/emacs.h ../../winix/functions/env.h
main.o: ../../winix/functions/imgcrop.h ../../winix/functions/last.h
main.o: ../../winix/functions/login.h ../../winix/functions/logout.h
main.o: ../../winix/functions/ln.h ../../winix/functions/ls.h
main.o: ../../winix/functions/man.h ../../winix/functions/meta.h
main.o: ../../winix/functions/mkdir.h ../../winix/functions/mv.h
main.o: ../../winix/functions/nicedit.h ../../winix/functions/node.h
main.o: ../../winix/functions/passwd.h ../../winix/functions/priv.h
main.o: ../../winix/functions/pw.h ../../winix/functions/reload.h
main.o: ../../winix/functions/rm.h ../../winix/functions/rmuser.h
main.o: ../../winix/functions/sort.h ../../winix/functions/specialdefault.h
main.o: ../../winix/functions/stat.h ../../winix/functions/subject.h
main.o: ../../winix/functions/template.h ../../winix/functions/tinymce.h
main.o: ../../winix/functions/uname.h ../../winix/functions/upload.h
main.o: ../../winix/functions/uptime.h ../../winix/functions/who.h
main.o: ../../winix/functions/vim.h ../../winix/core/htmlfilter.h
main.o: ../../winix/templates/templates.h
main.o: ../../winix/templates/patterncacher.h
main.o: ../../winix/templates/indexpatterns.h
main.o: ../../winix/templates/patterns.h
main.o: ../../winix/templates/changepatterns.h
main.o: ../../winix/templates/htmltextstream.h
main.o: ../../winix/core/sessionmanager.h ../../winix/core/compress.h
main.o: ../../winix/core/postparser.h ../../winix/core/httpsimpleparser.h
main.o: ../../winix/core/plugin.h ../../winix/core/pluginmsg.h
main.o: ../../winix/core/cookieparser.h ../../winix/core/postmultiparser.h
main.o: ../../winix/core/acceptencodingparser.h
main.o: ../../winix/core/acceptbaseparser.h ../../winix/core/plugin.h
main.o: ../../winix/core/version.h

View File

@@ -1 +0,0 @@
o = main.o

View File

@@ -1,19 +0,0 @@
include Makefile.o.dep
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

View File

@@ -1,228 +0,0 @@
# DO NOT DELETE
notify.o: notify.h notifypool.h ../../winix/templates/locale.h
notify.o: ../../pikotools/space/spaceparser.h ../../pikotools/space/space.h
notify.o: ../../pikotools/textstream/types.h
notify.o: ../../pikotools/textstream/textstream.h
notify.o: ../../pikotools/space/space.h ../../pikotools/date/date.h
notify.o: ../../pikotools/convert/convert.h
notify.o: ../../pikotools/convert/inttostr.h
notify.o: ../../pikotools/membuffer/membuffer.h
notify.o: ../../pikotools/textstream/types.h ../../winix/templates/patterns.h
notify.o: ../../winix/templates/locale.h ../../winix/templates/localefilter.h
notify.o: ../../ezc/src/ezc.h ../../ezc/src/generator.h
notify.o: ../../ezc/src/blocks.h ../../ezc/src/item.h ../../ezc/src/funinfo.h
notify.o: ../../ezc/src/functions.h ../../pikotools/utf8/utf8.h
notify.o: ../../ezc/src/cache.h ../../ezc/src/pattern.h
notify.o: ../../ezc/src/patternparser.h ../../winix/templates/misc.h
notify.o: ../../winix/templates/htmltextstream.h
notify.o: ../../winix/core/textstream.h notifythread.h
notify.o: ../../winix/core/basethread.h ../../winix/core/synchro.h
notify.o: templatesnotify.h ../../winix/core/config.h
notify.o: ../../winix/core/htmlfilter.h ../../winix/core/users.h
notify.o: ../../winix/core/user.h ../../winix/core/ugcontainer.h
notify.o: ../../winix/core/log.h ../../winix/core/textstream.h
notify.o: ../../winix/core/logmanipulators.h ../../winix/core/slog.h
notify.o: ../../winix/core/cur.h ../../winix/core/request.h
notify.o: ../../winix/core/requesttypes.h ../../winix/core/error.h
notify.o: ../../winix/core/config.h ../../winix/templates/htmltextstream.h
notify.o: ../../pikotools/space/spacetojson.h ../../winix/core/session.h
notify.o: ../../winix/core/plugindata.h ../../winix/core/rebus.h
notify.o: ../../winix/core/ipban.h ../../winix/core/mount.h
notify.o: ../../winix/core/lastcontainer.h ../../winix/db/db.h
notify.o: ../../winix/db/dbbase.h ../../winix/db/dbconn.h
notify.o: ../../winix/db/dbtextstream.h ../../winix/core/error.h
notify.o: ../../winix/db/dbitemquery.h ../../winix/core/item.h
notify.o: ../../winix/db/dbitemcolumns.h ../../winix/core/user.h
notify.o: ../../winix/core/group.h ../../winix/core/dircontainer.h
notify.o: ../../winix/core/ugcontainer.h ../../winix/templates/templates.h
notify.o: ../../winix/templates/patterncacher.h
notify.o: ../../winix/templates/indexpatterns.h
notify.o: ../../winix/templates/patterns.h
notify.o: ../../winix/templates/changepatterns.h ../../winix/core/cur.h
notify.o: ../../winix/core/system.h ../../winix/core/job.h
notify.o: ../../winix/core/basethread.h ../../winix/core/dirs.h
notify.o: ../../winix/core/dircontainer.h ../../winix/notify/notify.h
notify.o: ../../winix/core/mounts.h ../../winix/core/mountparser.h
notify.o: ../../winix/core/crypt.h ../../winix/core/run.h
notify.o: ../../winix/core/users.h ../../winix/core/groups.h
notify.o: ../../winix/core/group.h ../../winix/core/loadavg.h
notify.o: ../../winix/core/image.h ../../winix/core/threadmanager.h
notify.o: ../../winix/core/timezones.h ../../winix/core/timezone.h
notify.o: ../../winix/core/sessionmanager.h
notify.o: ../../winix/core/sessioncontainer.h
notify.o: ../../winix/core/ipbancontainer.h ../../winix/core/system.h
notify.o: ../../winix/core/htmlfilter.h ../../winix/core/request.h
notify.o: ../../winix/core/dirs.h ../../winix/core/plugin.h
notify.o: ../../winix/core/pluginmsg.h ../../winix/core/sessionmanager.h
notify.o: ../../winix/functions/functions.h
notify.o: ../../winix/functions/functionbase.h ../../winix/core/synchro.h
notify.o: ../../winix/functions/functionparser.h
notify.o: ../../winix/functions/account.h ../../winix/functions/adduser.h
notify.o: ../../winix/functions/cat.h ../../winix/functions/chmod.h
notify.o: ../../winix/functions/privchanger.h ../../winix/functions/chown.h
notify.o: ../../winix/functions/ckeditor.h ../../winix/functions/cp.h
notify.o: ../../winix/functions/default.h ../../winix/functions/download.h
notify.o: ../../winix/functions/emacs.h ../../winix/functions/env.h
notify.o: ../../winix/functions/imgcrop.h ../../winix/functions/last.h
notify.o: ../../winix/functions/login.h ../../winix/functions/logout.h
notify.o: ../../winix/functions/ln.h ../../winix/functions/ls.h
notify.o: ../../winix/functions/man.h ../../winix/functions/meta.h
notify.o: ../../winix/functions/mkdir.h ../../winix/functions/mv.h
notify.o: ../../winix/functions/nicedit.h ../../winix/functions/node.h
notify.o: ../../winix/functions/passwd.h ../../winix/functions/priv.h
notify.o: ../../winix/functions/pw.h ../../winix/functions/reload.h
notify.o: ../../winix/functions/rm.h ../../winix/functions/rmuser.h
notify.o: ../../winix/functions/sort.h ../../winix/functions/specialdefault.h
notify.o: ../../winix/functions/stat.h ../../winix/functions/subject.h
notify.o: ../../winix/functions/template.h ../../winix/functions/tinymce.h
notify.o: ../../winix/functions/uname.h ../../winix/functions/upload.h
notify.o: ../../winix/functions/uptime.h ../../winix/functions/who.h
notify.o: ../../winix/functions/vim.h
notifypool.o: notifypool.h ../../winix/templates/locale.h
notifypool.o: ../../pikotools/space/spaceparser.h
notifypool.o: ../../pikotools/space/space.h
notifypool.o: ../../pikotools/textstream/types.h
notifypool.o: ../../pikotools/textstream/textstream.h
notifypool.o: ../../pikotools/space/space.h ../../pikotools/date/date.h
notifypool.o: ../../pikotools/convert/convert.h
notifypool.o: ../../pikotools/convert/inttostr.h
notifypool.o: ../../pikotools/membuffer/membuffer.h
notifypool.o: ../../pikotools/textstream/types.h
notifythread.o: notifythread.h ../../winix/core/basethread.h
notifythread.o: ../../winix/core/synchro.h templatesnotify.h
notifythread.o: ../../ezc/src/ezc.h ../../ezc/src/generator.h
notifythread.o: ../../ezc/src/blocks.h ../../ezc/src/item.h
notifythread.o: ../../ezc/src/funinfo.h ../../ezc/src/functions.h
notifythread.o: ../../pikotools/utf8/utf8.h ../../ezc/src/cache.h
notifythread.o: ../../ezc/src/pattern.h ../../ezc/src/patternparser.h
notifythread.o: ../../winix/core/textstream.h ../../winix/templates/misc.h
notifythread.o: ../../winix/templates/localefilter.h
notifythread.o: ../../winix/templates/locale.h
notifythread.o: ../../winix/templates/htmltextstream.h
notifythread.o: ../../pikotools/space/space.h ../../pikotools/date/date.h
notifythread.o: ../../pikotools/textstream/textstream.h
notifythread.o: ../../pikotools/convert/convert.h
notifythread.o: ../../pikotools/convert/inttostr.h
notifythread.o: ../../pikotools/membuffer/membuffer.h
notifythread.o: ../../pikotools/textstream/types.h notifypool.h
notifythread.o: ../../winix/templates/locale.h
notifythread.o: ../../pikotools/space/spaceparser.h
notifythread.o: ../../pikotools/space/space.h
notifythread.o: ../../pikotools/textstream/types.h ../../winix/core/config.h
notifythread.o: ../../winix/core/htmlfilter.h ../../winix/core/users.h
notifythread.o: ../../winix/core/user.h ../../winix/core/ugcontainer.h
notifythread.o: ../../winix/core/log.h ../../winix/core/textstream.h
notifythread.o: ../../winix/core/logmanipulators.h ../../winix/core/slog.h
notifythread.o: ../../winix/core/cur.h ../../winix/core/request.h
notifythread.o: ../../winix/core/requesttypes.h ../../winix/core/error.h
notifythread.o: ../../winix/core/config.h
notifythread.o: ../../winix/templates/htmltextstream.h
notifythread.o: ../../pikotools/space/spacetojson.h
notifythread.o: ../../winix/core/session.h ../../winix/core/plugindata.h
notifythread.o: ../../winix/core/rebus.h ../../winix/core/ipban.h
notifythread.o: ../../winix/core/mount.h ../../winix/core/lastcontainer.h
notifythread.o: ../../winix/db/db.h ../../winix/db/dbbase.h
notifythread.o: ../../winix/db/dbconn.h ../../winix/db/dbtextstream.h
notifythread.o: ../../winix/core/error.h ../../winix/db/dbitemquery.h
notifythread.o: ../../winix/core/item.h ../../winix/db/dbitemcolumns.h
notifythread.o: ../../winix/core/user.h ../../winix/core/group.h
notifythread.o: ../../winix/core/dircontainer.h
notifythread.o: ../../winix/core/ugcontainer.h
notifythread.o: ../../winix/templates/patterns.h
templatesnotify.o: templatesnotify.h ../../ezc/src/ezc.h
templatesnotify.o: ../../ezc/src/generator.h ../../ezc/src/blocks.h
templatesnotify.o: ../../ezc/src/item.h ../../ezc/src/funinfo.h
templatesnotify.o: ../../ezc/src/functions.h ../../pikotools/utf8/utf8.h
templatesnotify.o: ../../ezc/src/cache.h ../../ezc/src/pattern.h
templatesnotify.o: ../../ezc/src/patternparser.h
templatesnotify.o: ../../winix/core/textstream.h ../../winix/templates/misc.h
templatesnotify.o: ../../winix/templates/localefilter.h
templatesnotify.o: ../../winix/templates/locale.h
templatesnotify.o: ../../winix/templates/htmltextstream.h
templatesnotify.o: ../../pikotools/space/space.h ../../pikotools/date/date.h
templatesnotify.o: ../../pikotools/textstream/textstream.h
templatesnotify.o: ../../pikotools/convert/convert.h
templatesnotify.o: ../../pikotools/convert/inttostr.h
templatesnotify.o: ../../pikotools/membuffer/membuffer.h
templatesnotify.o: ../../pikotools/textstream/types.h notifypool.h
templatesnotify.o: ../../winix/templates/locale.h
templatesnotify.o: ../../pikotools/space/spaceparser.h
templatesnotify.o: ../../pikotools/space/space.h
templatesnotify.o: ../../pikotools/textstream/types.h
templatesnotify.o: ../../winix/core/plugin.h ../../winix/core/pluginmsg.h
templatesnotify.o: ../../winix/core/log.h ../../winix/core/textstream.h
templatesnotify.o: ../../winix/core/logmanipulators.h ../../winix/core/slog.h
templatesnotify.o: ../../winix/core/cur.h ../../winix/core/request.h
templatesnotify.o: ../../winix/core/requesttypes.h ../../winix/core/error.h
templatesnotify.o: ../../winix/core/config.h
templatesnotify.o: ../../winix/templates/htmltextstream.h
templatesnotify.o: ../../pikotools/space/spacetojson.h
templatesnotify.o: ../../winix/core/session.h ../../winix/core/user.h
templatesnotify.o: ../../winix/core/plugindata.h ../../winix/core/rebus.h
templatesnotify.o: ../../winix/core/ipban.h ../../winix/core/mount.h
templatesnotify.o: ../../winix/core/system.h
templatesnotify.o: ../../winix/core/sessionmanager.h
templatesnotify.o: ../../winix/core/synchro.h
templatesnotify.o: ../../winix/functions/functions.h
templatesnotify.o: ../../winix/functions/functionbase.h
templatesnotify.o: ../../winix/core/item.h ../../winix/db/db.h
templatesnotify.o: ../../winix/db/dbbase.h ../../winix/db/dbconn.h
templatesnotify.o: ../../winix/db/dbtextstream.h ../../winix/core/error.h
templatesnotify.o: ../../winix/db/dbitemquery.h
templatesnotify.o: ../../winix/db/dbitemcolumns.h ../../winix/core/user.h
templatesnotify.o: ../../winix/core/group.h ../../winix/core/dircontainer.h
templatesnotify.o: ../../winix/core/ugcontainer.h ../../winix/core/request.h
templatesnotify.o: ../../winix/core/config.h ../../winix/core/htmlfilter.h
templatesnotify.o: ../../winix/core/system.h ../../winix/core/job.h
templatesnotify.o: ../../winix/core/basethread.h ../../winix/core/dirs.h
templatesnotify.o: ../../winix/core/dircontainer.h
templatesnotify.o: ../../winix/notify/notify.h ../../winix/core/mounts.h
templatesnotify.o: ../../winix/core/mountparser.h ../../winix/core/crypt.h
templatesnotify.o: ../../winix/core/run.h ../../winix/core/users.h
templatesnotify.o: ../../winix/core/groups.h ../../winix/core/group.h
templatesnotify.o: ../../winix/core/ugcontainer.h ../../winix/core/loadavg.h
templatesnotify.o: ../../winix/core/image.h ../../winix/core/threadmanager.h
templatesnotify.o: ../../winix/core/timezones.h ../../winix/core/timezone.h
templatesnotify.o: ../../winix/core/synchro.h
templatesnotify.o: ../../winix/functions/functionparser.h
templatesnotify.o: ../../winix/core/cur.h ../../winix/functions/account.h
templatesnotify.o: ../../winix/functions/adduser.h
templatesnotify.o: ../../winix/functions/cat.h ../../winix/functions/chmod.h
templatesnotify.o: ../../winix/functions/privchanger.h
templatesnotify.o: ../../winix/functions/chown.h
templatesnotify.o: ../../winix/functions/ckeditor.h
templatesnotify.o: ../../winix/functions/cp.h ../../winix/functions/default.h
templatesnotify.o: ../../winix/functions/download.h
templatesnotify.o: ../../winix/functions/emacs.h ../../winix/functions/env.h
templatesnotify.o: ../../winix/functions/imgcrop.h
templatesnotify.o: ../../winix/functions/last.h ../../winix/functions/login.h
templatesnotify.o: ../../winix/functions/logout.h ../../winix/functions/ln.h
templatesnotify.o: ../../winix/functions/ls.h ../../winix/functions/man.h
templatesnotify.o: ../../winix/functions/meta.h ../../winix/functions/mkdir.h
templatesnotify.o: ../../winix/functions/mv.h ../../winix/functions/nicedit.h
templatesnotify.o: ../../winix/functions/node.h
templatesnotify.o: ../../winix/functions/passwd.h
templatesnotify.o: ../../winix/functions/priv.h ../../winix/functions/pw.h
templatesnotify.o: ../../winix/functions/reload.h ../../winix/functions/rm.h
templatesnotify.o: ../../winix/functions/rmuser.h
templatesnotify.o: ../../winix/functions/sort.h
templatesnotify.o: ../../winix/functions/specialdefault.h
templatesnotify.o: ../../winix/functions/stat.h
templatesnotify.o: ../../winix/functions/subject.h
templatesnotify.o: ../../winix/functions/template.h
templatesnotify.o: ../../winix/functions/tinymce.h
templatesnotify.o: ../../winix/functions/uname.h
templatesnotify.o: ../../winix/functions/upload.h
templatesnotify.o: ../../winix/functions/uptime.h ../../winix/functions/who.h
templatesnotify.o: ../../winix/functions/vim.h ../../winix/core/htmlfilter.h
templatesnotify.o: ../../winix/templates/templates.h
templatesnotify.o: ../../winix/templates/patterncacher.h
templatesnotify.o: ../../winix/templates/indexpatterns.h
templatesnotify.o: ../../winix/templates/patterns.h
templatesnotify.o: ../../winix/templates/changepatterns.h
templatesnotify.o: ../../winix/core/sessionmanager.h
templatesnotify.o: ../../winix/core/sessioncontainer.h
templatesnotify.o: ../../winix/core/ipbancontainer.h
templatesnotify.o: ../../winix/core/lastcontainer.h ../../winix/core/misc.h
templatesnotify.o: ../../winix/core/winix_const.h

View File

@@ -1 +0,0 @@
o = notify.o notifypool.o notifythread.o templatesnotify.o

View File

@@ -1,30 +0,0 @@
include Makefile.o.dep
name = export.so
all: $(name)
# -lcurl is used when linking the main winix.so so we don't have to use it here
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,261 +0,0 @@
# DO NOT DELETE
edb.o: edb.h ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
edb.o: ../../../winix/db/dbtextstream.h ../../../winix/core/textstream.h
edb.o: ../../../winix/core/misc.h ../../../winix/core/item.h
edb.o: ../../../pikotools/space/space.h ../../../pikotools/textstream/types.h
edb.o: ../../../pikotools/date/date.h ../../../winix/core/requesttypes.h
edb.o: ../../../pikotools/textstream/textstream.h
edb.o: ../../../pikotools/convert/convert.h
edb.o: ../../../pikotools/convert/inttostr.h
edb.o: ../../../pikotools/membuffer/membuffer.h
edb.o: ../../../pikotools/textstream/types.h ../../../pikotools/utf8/utf8.h
edb.o: ../../../winix/core/winix_const.h ../../../winix/core/error.h
edb.o: ../../../pikotools/space/spaceparser.h
edb.o: ../../../pikotools/space/space.h export.h ../../../winix/core/dirs.h
edb.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
edb.o: ../../../winix/db/dbbase.h ../../../winix/db/dbitemquery.h
edb.o: ../../../winix/core/item.h ../../../winix/db/dbitemcolumns.h
edb.o: ../../../winix/core/user.h ../../../winix/core/group.h
edb.o: ../../../winix/core/dircontainer.h ../../../winix/core/ugcontainer.h
edb.o: ../../../winix/core/log.h ../../../winix/core/textstream.h
edb.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
edb.o: ../../../winix/core/cur.h ../../../winix/core/request.h
edb.o: ../../../winix/core/error.h ../../../winix/core/config.h
edb.o: ../../../winix/core/htmlfilter.h
edb.o: ../../../winix/templates/htmltextstream.h
edb.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
edb.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
edb.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
edb.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
edb.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
edb.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
edb.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
edb.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
edb.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
edb.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
edb.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
edb.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
edb.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/config.h
edb.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
edb.o: ../../../winix/core/lastcontainer.h ../../../winix/core/log.h
exportinfo.o: ../../../winix/core/log.h exportinfo.h
exportinfo.o: ../../../winix/core/system.h ../../../winix/core/job.h
exportinfo.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
exportinfo.o: ../../../pikotools/space/space.h
exportinfo.o: ../../../pikotools/textstream/types.h
exportinfo.o: ../../../winix/core/dirs.h ../../../winix/core/item.h
exportinfo.o: ../../../pikotools/date/date.h
exportinfo.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
exportinfo.o: ../../../winix/db/dbbase.h ../../../winix/db/dbitemquery.h
exportinfo.o: ../../../winix/core/item.h ../../../winix/db/dbitemcolumns.h
exportinfo.o: ../../../winix/core/user.h ../../../winix/core/group.h
exportinfo.o: ../../../winix/core/dircontainer.h
exportinfo.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
exportinfo.o: ../../../winix/core/textstream.h
exportinfo.o: ../../../winix/core/logmanipulators.h
exportinfo.o: ../../../pikotools/textstream/textstream.h
exportinfo.o: ../../../pikotools/convert/convert.h
exportinfo.o: ../../../pikotools/convert/inttostr.h
exportinfo.o: ../../../pikotools/membuffer/membuffer.h
exportinfo.o: ../../../pikotools/textstream/types.h
exportinfo.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
exportinfo.o: ../../../winix/core/request.h
exportinfo.o: ../../../winix/core/requesttypes.h ../../../winix/core/error.h
exportinfo.o: ../../../winix/core/config.h
exportinfo.o: ../../../pikotools/space/spaceparser.h
exportinfo.o: ../../../pikotools/space/space.h
exportinfo.o: ../../../winix/core/htmlfilter.h
exportinfo.o: ../../../winix/templates/htmltextstream.h
exportinfo.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
exportinfo.o: ../../../pikotools/utf8/utf8.h
exportinfo.o: ../../../winix/core/winix_const.h
exportinfo.o: ../../../pikotools/space/spacetojson.h
exportinfo.o: ../../../winix/core/session.h ../../../winix/core/user.h
exportinfo.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
exportinfo.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
exportinfo.o: ../../../winix/templates/locale.h
exportinfo.o: ../../../winix/notify/notify.h
exportinfo.o: ../../../winix/notify/notifypool.h
exportinfo.o: ../../../winix/templates/patterns.h
exportinfo.o: ../../../winix/templates/locale.h
exportinfo.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
exportinfo.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
exportinfo.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
exportinfo.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
exportinfo.o: ../../../ezc/src/patternparser.h
exportinfo.o: ../../../winix/notify/notifythread.h
exportinfo.o: ../../../winix/core/basethread.h
exportinfo.o: ../../../winix/notify/templatesnotify.h
exportinfo.o: ../../../winix/core/config.h ../../../winix/core/users.h
exportinfo.o: ../../../winix/core/ugcontainer.h
exportinfo.o: ../../../winix/core/lastcontainer.h
exportinfo.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
exportinfo.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
exportinfo.o: ../../../winix/core/users.h ../../../winix/core/groups.h
exportinfo.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
exportinfo.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
exportinfo.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
exportinfo.o: export.h edb.h ../../../winix/db/dbbase.h
exportinfo.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
exportinfo.o: ../../../winix/core/error.h ../../../winix/core/dirs.h
exportinfo.o: message.h exportthread.h
exportthread.o: exportthread.h ../../../winix/core/basethread.h
exportthread.o: ../../../winix/core/synchro.h message.h
exportthread.o: ../../../winix/core/log.h ../../../winix/core/misc.h
exportthread.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
exportthread.o: ../../../pikotools/textstream/types.h
exportthread.o: ../../../pikotools/date/date.h
exportthread.o: ../../../winix/core/requesttypes.h
exportthread.o: ../../../pikotools/textstream/textstream.h
exportthread.o: ../../../pikotools/convert/convert.h
exportthread.o: ../../../pikotools/convert/inttostr.h
exportthread.o: ../../../pikotools/membuffer/membuffer.h
exportthread.o: ../../../pikotools/textstream/types.h
exportthread.o: ../../../pikotools/utf8/utf8.h
exportthread.o: ../../../winix/core/winix_const.h
funexport.o: funexport.h ../../../winix/functions/functionbase.h
funexport.o: ../../../winix/core/item.h ../../../winix/db/db.h
funexport.o: ../../../winix/db/dbbase.h ../../../winix/db/dbitemquery.h
funexport.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
funexport.o: ../../../pikotools/space/space.h
funexport.o: ../../../pikotools/textstream/types.h
funexport.o: ../../../pikotools/date/date.h ../../../winix/core/group.h
funexport.o: ../../../winix/core/dircontainer.h
funexport.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
funexport.o: ../../../winix/core/textstream.h
funexport.o: ../../../winix/core/logmanipulators.h
funexport.o: ../../../pikotools/textstream/textstream.h
funexport.o: ../../../pikotools/convert/convert.h
funexport.o: ../../../pikotools/convert/inttostr.h
funexport.o: ../../../pikotools/membuffer/membuffer.h
funexport.o: ../../../pikotools/textstream/types.h ../../../winix/core/slog.h
funexport.o: ../../../winix/core/cur.h ../../../winix/core/request.h
funexport.o: ../../../winix/core/requesttypes.h ../../../winix/core/item.h
funexport.o: ../../../winix/core/error.h ../../../winix/core/config.h
funexport.o: ../../../pikotools/space/spaceparser.h
funexport.o: ../../../pikotools/space/space.h
funexport.o: ../../../winix/core/htmlfilter.h
funexport.o: ../../../winix/templates/htmltextstream.h
funexport.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
funexport.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
funexport.o: ../../../pikotools/space/spacetojson.h
funexport.o: ../../../winix/core/session.h ../../../winix/core/user.h
funexport.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
funexport.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
funexport.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
funexport.o: ../../../winix/core/config.h ../../../winix/core/system.h
funexport.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
funexport.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
funexport.o: ../../../winix/core/dircontainer.h
funexport.o: ../../../winix/notify/notify.h
funexport.o: ../../../winix/notify/notifypool.h
funexport.o: ../../../winix/templates/patterns.h
funexport.o: ../../../winix/templates/locale.h
funexport.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
funexport.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
funexport.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
funexport.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
funexport.o: ../../../ezc/src/patternparser.h
funexport.o: ../../../winix/notify/notifythread.h
funexport.o: ../../../winix/core/basethread.h
funexport.o: ../../../winix/notify/templatesnotify.h
funexport.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
funexport.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
funexport.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
funexport.o: ../../../winix/core/run.h ../../../winix/core/users.h
funexport.o: ../../../winix/core/groups.h ../../../winix/core/group.h
funexport.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
funexport.o: ../../../winix/core/threadmanager.h
funexport.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
funexport.o: ../../../winix/core/synchro.h exportinfo.h export.h edb.h
funexport.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
funexport.o: ../../../winix/db/dbtextstream.h ../../../winix/core/error.h
funexport.o: ../../../winix/core/dirs.h message.h exportthread.h
init.o: ../../../winix/core/log.h ../../../winix/core/plugin.h
init.o: ../../../winix/core/pluginmsg.h ../../../winix/core/log.h
init.o: ../../../winix/core/textstream.h
init.o: ../../../winix/core/logmanipulators.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/requesttypes.h ../../../winix/core/item.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
init.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/system.h ../../../winix/core/job.h
init.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
init.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
init.o: ../../../winix/db/dbitemquery.h ../../../winix/core/item.h
init.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
init.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/notify/notify.h
init.o: ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
init.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/config.h
init.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
init.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
init.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
init.o: ../../../winix/core/run.h ../../../winix/core/users.h
init.o: ../../../winix/core/groups.h ../../../winix/core/group.h
init.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
init.o: ../../../winix/core/threadmanager.h ../../../winix/core/timezones.h
init.o: ../../../winix/core/timezone.h ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h ../../../winix/core/request.h
init.o: ../../../winix/core/system.h ../../../winix/core/synchro.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h exportthread.h message.h
init.o: exportinfo.h export.h edb.h ../../../winix/db/dbbase.h
init.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
init.o: ../../../winix/core/error.h ../../../winix/core/dirs.h funexport.h
init.o: ../../../winix/functions/functionbase.h

View File

@@ -1 +0,0 @@
o = edb.o exportinfo.o exportthread.o funexport.o init.o

View File

@@ -1,28 +0,0 @@
include Makefile.o.dep
name = gallery.so
all: $(name)
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,248 +0,0 @@
# DO NOT DELETE
gallery.o: gallery.h ../../../winix/functions/functionbase.h
gallery.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
gallery.o: ../../../pikotools/textstream/types.h
gallery.o: ../../../pikotools/date/date.h ../../../winix/db/db.h
gallery.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
gallery.o: ../../../winix/db/dbtextstream.h ../../../winix/core/textstream.h
gallery.o: ../../../winix/core/misc.h ../../../winix/core/item.h
gallery.o: ../../../winix/core/requesttypes.h
gallery.o: ../../../pikotools/textstream/textstream.h
gallery.o: ../../../pikotools/convert/convert.h
gallery.o: ../../../pikotools/convert/inttostr.h
gallery.o: ../../../pikotools/membuffer/membuffer.h
gallery.o: ../../../pikotools/textstream/types.h
gallery.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
gallery.o: ../../../winix/core/error.h ../../../pikotools/space/spaceparser.h
gallery.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
gallery.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
gallery.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
gallery.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
gallery.o: ../../../winix/core/textstream.h
gallery.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
gallery.o: ../../../winix/core/cur.h ../../../winix/core/request.h
gallery.o: ../../../winix/core/error.h ../../../winix/core/config.h
gallery.o: ../../../winix/core/htmlfilter.h
gallery.o: ../../../winix/templates/htmltextstream.h
gallery.o: ../../../pikotools/space/spacetojson.h
gallery.o: ../../../winix/core/session.h ../../../winix/core/user.h
gallery.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
gallery.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
gallery.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
gallery.o: ../../../winix/core/config.h ../../../winix/core/system.h
gallery.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
gallery.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
gallery.o: ../../../winix/core/dircontainer.h ../../../winix/notify/notify.h
gallery.o: ../../../winix/notify/notifypool.h
gallery.o: ../../../winix/templates/patterns.h
gallery.o: ../../../winix/templates/locale.h
gallery.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
gallery.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
gallery.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
gallery.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
gallery.o: ../../../ezc/src/patternparser.h
gallery.o: ../../../winix/notify/notifythread.h
gallery.o: ../../../winix/core/basethread.h
gallery.o: ../../../winix/notify/templatesnotify.h
gallery.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
gallery.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
gallery.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
gallery.o: ../../../winix/core/run.h ../../../winix/core/users.h
gallery.o: ../../../winix/core/groups.h ../../../winix/core/group.h
gallery.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
gallery.o: ../../../winix/core/threadmanager.h
gallery.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
gallery.o: ../../../winix/core/synchro.h galleryinfo.h
galleryinfo.o: galleryinfo.h ../../../winix/core/item.h
galleryinfo.o: ../../../pikotools/space/space.h
galleryinfo.o: ../../../pikotools/textstream/types.h
galleryinfo.o: ../../../pikotools/date/date.h
init.o: gallery.h ../../../winix/functions/functionbase.h
init.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
init.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
init.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
init.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
init.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/utf8/utf8.h
init.o: ../../../winix/core/winix_const.h ../../../winix/core/error.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
init.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
init.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
init.o: ../../../winix/core/textstream.h
init.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/request.h ../../../winix/core/config.h
init.o: ../../../winix/core/system.h ../../../winix/core/job.h
init.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
init.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
init.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/users.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/lastcontainer.h
init.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
init.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
init.o: ../../../winix/core/users.h ../../../winix/core/groups.h
init.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
init.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
init.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
init.o: ../../../winix/core/synchro.h galleryinfo.h ../../../winix/core/log.h
init.o: ../../../winix/core/plugin.h ../../../winix/core/pluginmsg.h
init.o: ../../../winix/core/system.h ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h
templates.o: gallery.h ../../../winix/functions/functionbase.h
templates.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/date/date.h ../../../winix/db/db.h
templates.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
templates.o: ../../../winix/db/dbtextstream.h
templates.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
templates.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
templates.o: ../../../pikotools/textstream/textstream.h
templates.o: ../../../pikotools/convert/convert.h
templates.o: ../../../pikotools/convert/inttostr.h
templates.o: ../../../pikotools/membuffer/membuffer.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
templates.o: ../../../winix/core/error.h
templates.o: ../../../pikotools/space/spaceparser.h
templates.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
templates.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
templates.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
templates.o: ../../../winix/core/textstream.h
templates.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
templates.o: ../../../winix/core/cur.h ../../../winix/core/request.h
templates.o: ../../../winix/core/error.h ../../../winix/core/config.h
templates.o: ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../pikotools/space/spacetojson.h
templates.o: ../../../winix/core/session.h ../../../winix/core/user.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
templates.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
templates.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
templates.o: ../../../winix/core/config.h ../../../winix/core/system.h
templates.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
templates.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
templates.o: ../../../winix/core/dircontainer.h
templates.o: ../../../winix/notify/notify.h
templates.o: ../../../winix/notify/notifypool.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
templates.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
templates.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
templates.o: ../../../ezc/src/patternparser.h
templates.o: ../../../winix/notify/notifythread.h
templates.o: ../../../winix/core/basethread.h
templates.o: ../../../winix/notify/templatesnotify.h
templates.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
templates.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
templates.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
templates.o: ../../../winix/core/run.h ../../../winix/core/users.h
templates.o: ../../../winix/core/groups.h ../../../winix/core/group.h
templates.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
templates.o: ../../../winix/core/threadmanager.h
templates.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
templates.o: ../../../winix/core/synchro.h galleryinfo.h
templates.o: ../../../winix/core/misc.h ../../../winix/core/plugin.h
templates.o: ../../../winix/core/pluginmsg.h ../../../winix/core/system.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/sessioncontainer.h
templates.o: ../../../winix/core/ipbancontainer.h
templates.o: ../../../winix/functions/functions.h
templates.o: ../../../winix/functions/functionbase.h
templates.o: ../../../winix/functions/functionparser.h
templates.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
templates.o: ../../../winix/functions/adduser.h
templates.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
templates.o: ../../../winix/functions/privchanger.h
templates.o: ../../../winix/functions/chown.h
templates.o: ../../../winix/functions/ckeditor.h
templates.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
templates.o: ../../../winix/functions/download.h
templates.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
templates.o: ../../../winix/functions/imgcrop.h
templates.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
templates.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
templates.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
templates.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
templates.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
templates.o: ../../../winix/functions/node.h
templates.o: ../../../winix/functions/passwd.h
templates.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
templates.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
templates.o: ../../../winix/functions/rmuser.h
templates.o: ../../../winix/functions/sort.h
templates.o: ../../../winix/functions/specialdefault.h
templates.o: ../../../winix/functions/stat.h
templates.o: ../../../winix/functions/subject.h
templates.o: ../../../winix/functions/template.h
templates.o: ../../../winix/functions/tinymce.h
templates.o: ../../../winix/functions/uname.h
templates.o: ../../../winix/functions/upload.h
templates.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
templates.o: ../../../winix/functions/vim.h ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/templates.h
templates.o: ../../../winix/templates/patterncacher.h
templates.o: ../../../winix/templates/indexpatterns.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/changepatterns.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/templates/miscspace.h
templates.o: ../../../winix/templates/templates.h

View File

@@ -1 +0,0 @@
o = gallery.o galleryinfo.o init.o templates.o

View File

@@ -1,28 +0,0 @@
include Makefile.o.dep
name = group.so
all: $(name)
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,242 +0,0 @@
# DO NOT DELETE
groupinfo.o: groupinfo.h groups.h ../../../pikotools/space/spaceparser.h
groupinfo.o: ../../../pikotools/space/space.h
groupinfo.o: ../../../pikotools/textstream/types.h ../../../winix/core/item.h
groupinfo.o: ../../../pikotools/space/space.h ../../../pikotools/date/date.h
groupinfo.o: ../../../winix/core/system.h ../../../winix/core/job.h
groupinfo.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
groupinfo.o: ../../../winix/core/dirs.h ../../../winix/core/item.h
groupinfo.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
groupinfo.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
groupinfo.o: ../../../winix/db/dbtextstream.h
groupinfo.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
groupinfo.o: ../../../winix/core/requesttypes.h
groupinfo.o: ../../../pikotools/textstream/textstream.h
groupinfo.o: ../../../pikotools/convert/convert.h
groupinfo.o: ../../../pikotools/convert/inttostr.h
groupinfo.o: ../../../pikotools/membuffer/membuffer.h
groupinfo.o: ../../../pikotools/textstream/types.h
groupinfo.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
groupinfo.o: ../../../winix/core/error.h ../../../winix/db/dbitemquery.h
groupinfo.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
groupinfo.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
groupinfo.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
groupinfo.o: ../../../winix/core/textstream.h
groupinfo.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
groupinfo.o: ../../../winix/core/cur.h ../../../winix/core/request.h
groupinfo.o: ../../../winix/core/error.h ../../../winix/core/config.h
groupinfo.o: ../../../winix/core/htmlfilter.h
groupinfo.o: ../../../winix/templates/htmltextstream.h
groupinfo.o: ../../../pikotools/space/spacetojson.h
groupinfo.o: ../../../winix/core/session.h ../../../winix/core/user.h
groupinfo.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
groupinfo.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
groupinfo.o: ../../../winix/templates/locale.h ../../../winix/notify/notify.h
groupinfo.o: ../../../winix/notify/notifypool.h
groupinfo.o: ../../../winix/templates/patterns.h
groupinfo.o: ../../../winix/templates/locale.h
groupinfo.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
groupinfo.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
groupinfo.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
groupinfo.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
groupinfo.o: ../../../ezc/src/patternparser.h
groupinfo.o: ../../../winix/notify/notifythread.h
groupinfo.o: ../../../winix/core/basethread.h
groupinfo.o: ../../../winix/notify/templatesnotify.h
groupinfo.o: ../../../winix/core/config.h ../../../winix/core/users.h
groupinfo.o: ../../../winix/core/ugcontainer.h
groupinfo.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
groupinfo.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
groupinfo.o: ../../../winix/core/run.h ../../../winix/core/users.h
groupinfo.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
groupinfo.o: ../../../winix/core/threadmanager.h
groupinfo.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
groupinfo.o: ../../../winix/core/log.h
groups.o: groups.h ../../../pikotools/space/spaceparser.h
groups.o: ../../../pikotools/space/space.h
groups.o: ../../../pikotools/textstream/types.h ../../../winix/core/log.h
init.o: ../../../winix/core/log.h ../../../winix/core/plugin.h
init.o: ../../../winix/core/pluginmsg.h ../../../winix/core/log.h
init.o: ../../../winix/core/textstream.h
init.o: ../../../winix/core/logmanipulators.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/space/space.h ../../../pikotools/date/date.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/requesttypes.h ../../../winix/core/item.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h
init.o: ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
init.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/system.h ../../../winix/core/job.h
init.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
init.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
init.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
init.o: ../../../winix/core/error.h ../../../winix/db/dbitemquery.h
init.o: ../../../winix/core/item.h ../../../winix/db/dbitemcolumns.h
init.o: ../../../winix/core/user.h ../../../winix/core/group.h
init.o: ../../../winix/core/dircontainer.h ../../../winix/core/ugcontainer.h
init.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
init.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/config.h
init.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
init.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
init.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
init.o: ../../../winix/core/run.h ../../../winix/core/users.h groups.h
init.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
init.o: ../../../winix/core/threadmanager.h ../../../winix/core/timezones.h
init.o: ../../../winix/core/timezone.h ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h ../../../winix/core/request.h
init.o: ../../../winix/core/system.h ../../../winix/core/synchro.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h groupinfo.h
templates.o: ../../../winix/templates/templates.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
templates.o: ../../../winix/core/item.h ../../../ezc/src/cache.h
templates.o: ../../../ezc/src/functions.h ../../../pikotools/utf8/utf8.h
templates.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
templates.o: ../../../ezc/src/patternparser.h ../../../winix/core/misc.h
templates.o: ../../../winix/core/requesttypes.h
templates.o: ../../../pikotools/textstream/textstream.h
templates.o: ../../../pikotools/space/space.h ../../../pikotools/date/date.h
templates.o: ../../../pikotools/convert/convert.h
templates.o: ../../../pikotools/convert/inttostr.h
templates.o: ../../../pikotools/membuffer/membuffer.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../winix/core/winix_const.h
templates.o: ../../../winix/templates/patterncacher.h
templates.o: ../../../winix/core/item.h
templates.o: ../../../winix/templates/indexpatterns.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/changepatterns.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/templates/localefilter.h
templates.o: ../../../winix/core/config.h ../../../winix/core/cur.h
templates.o: ../../../winix/core/system.h ../../../winix/core/job.h
templates.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
templates.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
templates.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
templates.o: ../../../winix/core/textstream.h ../../../winix/core/error.h
templates.o: ../../../pikotools/space/spaceparser.h
templates.o: ../../../pikotools/space/space.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../winix/db/dbitemquery.h
templates.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
templates.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
templates.o: ../../../winix/core/textstream.h
templates.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
templates.o: ../../../winix/core/cur.h ../../../winix/core/request.h
templates.o: ../../../winix/core/error.h ../../../winix/core/config.h
templates.o: ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../pikotools/space/spacetojson.h
templates.o: ../../../winix/core/session.h ../../../winix/core/user.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
templates.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
templates.o: ../../../winix/templates/locale.h ../../../winix/notify/notify.h
templates.o: ../../../winix/notify/notifypool.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/notify/notifythread.h
templates.o: ../../../winix/core/basethread.h
templates.o: ../../../winix/notify/templatesnotify.h
templates.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
templates.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
templates.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
templates.o: ../../../winix/core/run.h ../../../winix/core/users.h groups.h
templates.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
templates.o: ../../../winix/core/threadmanager.h
templates.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/htmlfilter.h ../../../winix/core/plugin.h
templates.o: ../../../winix/core/pluginmsg.h ../../../winix/core/system.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/sessioncontainer.h
templates.o: ../../../winix/core/ipbancontainer.h
templates.o: ../../../winix/functions/functions.h
templates.o: ../../../winix/functions/functionbase.h
templates.o: ../../../winix/core/request.h ../../../winix/core/synchro.h
templates.o: ../../../winix/functions/functionparser.h
templates.o: ../../../winix/functions/account.h
templates.o: ../../../winix/functions/adduser.h
templates.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
templates.o: ../../../winix/functions/privchanger.h
templates.o: ../../../winix/functions/chown.h
templates.o: ../../../winix/functions/ckeditor.h
templates.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
templates.o: ../../../winix/functions/download.h
templates.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
templates.o: ../../../winix/functions/imgcrop.h
templates.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
templates.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
templates.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
templates.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
templates.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
templates.o: ../../../winix/functions/node.h
templates.o: ../../../winix/functions/passwd.h
templates.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
templates.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
templates.o: ../../../winix/functions/rmuser.h
templates.o: ../../../winix/functions/sort.h
templates.o: ../../../winix/functions/specialdefault.h
templates.o: ../../../winix/functions/stat.h
templates.o: ../../../winix/functions/subject.h
templates.o: ../../../winix/functions/template.h
templates.o: ../../../winix/functions/tinymce.h
templates.o: ../../../winix/functions/uname.h
templates.o: ../../../winix/functions/upload.h
templates.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
templates.o: ../../../winix/functions/vim.h groupinfo.h
templates.o: ../../../winix/core/misc.h

View File

@@ -1 +0,0 @@
o = groupinfo.o groups.o init.o templates.o

View File

@@ -1,28 +0,0 @@
include Makefile.o.dep
name = menu.so
all: $(name)
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,228 +0,0 @@
# DO NOT DELETE
cache.o: cache.h ../../../winix/core/item.h ../../../pikotools/space/space.h
cache.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
cache.o: ../../../winix/core/dirs.h ../../../winix/core/item.h
cache.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
cache.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
cache.o: ../../../winix/db/dbtextstream.h ../../../winix/core/textstream.h
cache.o: ../../../winix/core/misc.h ../../../winix/core/requesttypes.h
cache.o: ../../../pikotools/textstream/textstream.h
cache.o: ../../../pikotools/convert/convert.h
cache.o: ../../../pikotools/convert/inttostr.h
cache.o: ../../../pikotools/membuffer/membuffer.h
cache.o: ../../../pikotools/textstream/types.h ../../../pikotools/utf8/utf8.h
cache.o: ../../../winix/core/winix_const.h ../../../winix/core/error.h
cache.o: ../../../pikotools/space/spaceparser.h
cache.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
cache.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
cache.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
cache.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
cache.o: ../../../winix/core/textstream.h
cache.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
cache.o: ../../../winix/core/cur.h ../../../winix/core/request.h
cache.o: ../../../winix/core/error.h ../../../winix/core/config.h
cache.o: ../../../winix/core/htmlfilter.h
cache.o: ../../../winix/templates/htmltextstream.h
cache.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
cache.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
cache.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
cache.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
cache.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
cache.o: ../../../winix/templates/patterns.h
cache.o: ../../../winix/templates/locale.h
cache.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
cache.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
cache.o: ../../../ezc/src/pattern.h ../../../ezc/src/functions.h
cache.o: ../../../ezc/src/funinfo.h ../../../ezc/src/patternparser.h
cache.o: ../../../winix/notify/notifythread.h
cache.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
cache.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/config.h
cache.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
cache.o: ../../../winix/core/lastcontainer.h ../../../winix/core/misc.h
init.o: ../../../winix/core/log.h ../../../winix/core/textstream.h
init.o: ../../../winix/core/logmanipulators.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/requesttypes.h ../../../winix/core/item.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
init.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/plugin.h ../../../winix/core/pluginmsg.h
init.o: ../../../winix/core/log.h ../../../winix/core/system.h
init.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
init.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
init.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
init.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
init.o: ../../../winix/db/dbtextstream.h ../../../winix/core/error.h
init.o: ../../../winix/db/dbitemquery.h ../../../winix/core/item.h
init.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
init.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/notify/notify.h
init.o: ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h cache.h
init.o: ../../../winix/core/dirs.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/config.h
init.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
init.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
init.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
init.o: ../../../winix/core/run.h ../../../winix/core/users.h
init.o: ../../../winix/core/groups.h ../../../winix/core/group.h
init.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
init.o: ../../../winix/core/threadmanager.h ../../../winix/core/timezones.h
init.o: ../../../winix/core/timezone.h ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h ../../../winix/core/request.h
init.o: ../../../winix/core/system.h ../../../winix/core/synchro.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/templates/templates.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
templates.o: ../../../winix/core/item.h cache.h ../../../winix/core/item.h
templates.o: ../../../pikotools/space/space.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/date/date.h ../../../winix/core/dirs.h
templates.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
templates.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
templates.o: ../../../winix/db/dbtextstream.h
templates.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
templates.o: ../../../winix/core/requesttypes.h
templates.o: ../../../pikotools/textstream/textstream.h
templates.o: ../../../pikotools/convert/convert.h
templates.o: ../../../pikotools/convert/inttostr.h
templates.o: ../../../pikotools/membuffer/membuffer.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
templates.o: ../../../winix/core/error.h
templates.o: ../../../pikotools/space/spaceparser.h
templates.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
templates.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
templates.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
templates.o: ../../../winix/core/textstream.h
templates.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
templates.o: ../../../winix/core/cur.h ../../../winix/core/request.h
templates.o: ../../../winix/core/error.h ../../../winix/core/config.h
templates.o: ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../pikotools/space/spacetojson.h
templates.o: ../../../winix/core/session.h ../../../winix/core/user.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
templates.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
templates.o: ../../../winix/templates/locale.h ../../../winix/notify/notify.h
templates.o: ../../../winix/notify/notifypool.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/localefilter.h
templates.o: ../../../winix/notify/notifythread.h
templates.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
templates.o: ../../../winix/notify/templatesnotify.h
templates.o: ../../../winix/core/config.h ../../../winix/core/users.h
templates.o: ../../../winix/core/ugcontainer.h
templates.o: ../../../winix/core/lastcontainer.h ../../../ezc/src/pattern.h
templates.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
templates.o: ../../../ezc/src/patternparser.h
templates.o: ../../../winix/templates/patterncacher.h
templates.o: ../../../winix/templates/indexpatterns.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/changepatterns.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/core/cur.h ../../../winix/core/system.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/htmlfilter.h ../../../winix/core/plugin.h
templates.o: ../../../winix/core/pluginmsg.h ../../../winix/core/system.h
templates.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
templates.o: ../../../winix/core/dirs.h ../../../winix/core/mounts.h
templates.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
templates.o: ../../../winix/core/run.h ../../../winix/core/users.h
templates.o: ../../../winix/core/groups.h ../../../winix/core/group.h
templates.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
templates.o: ../../../winix/core/threadmanager.h
templates.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/sessioncontainer.h
templates.o: ../../../winix/core/ipbancontainer.h
templates.o: ../../../winix/functions/functions.h
templates.o: ../../../winix/functions/functionbase.h
templates.o: ../../../winix/core/request.h ../../../winix/core/synchro.h
templates.o: ../../../winix/functions/functionparser.h
templates.o: ../../../winix/functions/account.h
templates.o: ../../../winix/functions/adduser.h
templates.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
templates.o: ../../../winix/functions/privchanger.h
templates.o: ../../../winix/functions/chown.h
templates.o: ../../../winix/functions/ckeditor.h
templates.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
templates.o: ../../../winix/functions/download.h
templates.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
templates.o: ../../../winix/functions/imgcrop.h
templates.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
templates.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
templates.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
templates.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
templates.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
templates.o: ../../../winix/functions/node.h
templates.o: ../../../winix/functions/passwd.h
templates.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
templates.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
templates.o: ../../../winix/functions/rmuser.h
templates.o: ../../../winix/functions/sort.h
templates.o: ../../../winix/functions/specialdefault.h
templates.o: ../../../winix/functions/stat.h
templates.o: ../../../winix/functions/subject.h
templates.o: ../../../winix/functions/template.h
templates.o: ../../../winix/functions/tinymce.h
templates.o: ../../../winix/functions/uname.h
templates.o: ../../../winix/functions/upload.h
templates.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
templates.o: ../../../winix/functions/vim.h ../../../winix/core/log.h
templates.o: ../../../winix/core/misc.h ../../../winix/templates/miscspace.h
templates.o: ../../../winix/templates/templates.h

View File

@@ -1 +0,0 @@
o = cache.o init.o templates.o

View File

@@ -1,28 +0,0 @@
include Makefile.o.dep
name = stats.so
all: $(name)
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,212 +0,0 @@
# DO NOT DELETE
bot.o: bot.h
init.o: ../../../winix/core/log.h ../../../winix/core/textstream.h
init.o: ../../../winix/core/misc.h ../../../winix/core/item.h
init.o: ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
init.o: ../../../winix/core/requesttypes.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/utf8/utf8.h
init.o: ../../../winix/core/winix_const.h
init.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/textstream.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/request.h ../../../winix/core/config.h
init.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
init.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
init.o: ../../../winix/core/error.h ../../../winix/db/dbitemquery.h
init.o: ../../../winix/core/item.h ../../../winix/db/dbitemcolumns.h
init.o: ../../../winix/core/user.h ../../../winix/core/group.h
init.o: ../../../winix/core/dircontainer.h ../../../winix/core/ugcontainer.h
init.o: ../../../winix/core/log.h bot.h stats.h templates.h
init.o: ../../../winix/core/plugin.h ../../../winix/core/pluginmsg.h
init.o: ../../../winix/core/system.h ../../../winix/core/job.h
init.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
init.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
init.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/users.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/lastcontainer.h
init.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
init.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
init.o: ../../../winix/core/users.h ../../../winix/core/groups.h
init.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
init.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
init.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
init.o: ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h ../../../winix/core/system.h
init.o: ../../../winix/core/synchro.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h statssession.h
init.o: ../../../winix/core/plugindata.h
stats.o: stats.h ../../../winix/core/config.h ../../../winix/core/log.h
stats.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
stats.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
stats.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
stats.o: ../../../winix/core/requesttypes.h
stats.o: ../../../pikotools/textstream/textstream.h
stats.o: ../../../pikotools/convert/convert.h
stats.o: ../../../pikotools/convert/inttostr.h
stats.o: ../../../pikotools/membuffer/membuffer.h
stats.o: ../../../pikotools/textstream/types.h ../../../pikotools/utf8/utf8.h
stats.o: ../../../winix/core/winix_const.h
stats.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
stats.o: ../../../winix/core/cur.h ../../../winix/core/request.h
stats.o: ../../../winix/core/error.h ../../../winix/core/config.h
stats.o: ../../../pikotools/space/spaceparser.h
stats.o: ../../../pikotools/space/space.h ../../../winix/core/htmlfilter.h
stats.o: ../../../winix/templates/htmltextstream.h
stats.o: ../../../winix/core/textstream.h
stats.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
stats.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
stats.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
stats.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
templates.o: templates.h ../../../winix/core/plugin.h
templates.o: ../../../winix/core/pluginmsg.h ../../../winix/core/log.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/core/config.h
templates.o: ../../../pikotools/space/spaceparser.h
templates.o: ../../../pikotools/space/space.h
templates.o: ../../../winix/core/htmlfilter.h ../../../winix/core/request.h
templates.o: ../../../winix/core/requesttypes.h
templates.o: ../../../pikotools/textstream/textstream.h
templates.o: ../../../pikotools/space/space.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/date/date.h
templates.o: ../../../pikotools/convert/convert.h
templates.o: ../../../pikotools/convert/inttostr.h
templates.o: ../../../pikotools/membuffer/membuffer.h
templates.o: ../../../pikotools/textstream/types.h ../../../winix/core/item.h
templates.o: ../../../winix/core/error.h ../../../winix/core/textstream.h
templates.o: ../../../winix/core/misc.h ../../../pikotools/utf8/utf8.h
templates.o: ../../../winix/core/winix_const.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/core/textstream.h
templates.o: ../../../pikotools/space/spacetojson.h
templates.o: ../../../winix/core/system.h ../../../winix/core/job.h
templates.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
templates.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
templates.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
templates.o: ../../../winix/core/error.h ../../../winix/db/dbitemquery.h
templates.o: ../../../winix/core/item.h ../../../winix/db/dbitemcolumns.h
templates.o: ../../../winix/core/user.h ../../../winix/core/group.h
templates.o: ../../../winix/core/dircontainer.h
templates.o: ../../../winix/core/ugcontainer.h ../../../winix/notify/notify.h
templates.o: ../../../winix/notify/notifypool.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
templates.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
templates.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
templates.o: ../../../ezc/src/patternparser.h
templates.o: ../../../winix/notify/notifythread.h
templates.o: ../../../winix/core/basethread.h
templates.o: ../../../winix/notify/templatesnotify.h
templates.o: ../../../winix/core/config.h ../../../winix/core/users.h
templates.o: ../../../winix/core/user.h ../../../winix/core/ugcontainer.h
templates.o: ../../../winix/core/lastcontainer.h ../../../winix/core/cur.h
templates.o: ../../../winix/core/session.h ../../../winix/core/rebus.h
templates.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
templates.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
templates.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
templates.o: ../../../winix/core/users.h ../../../winix/core/groups.h
templates.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
templates.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
templates.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/sessioncontainer.h
templates.o: ../../../winix/core/ipbancontainer.h
templates.o: ../../../winix/functions/functions.h
templates.o: ../../../winix/functions/functionbase.h
templates.o: ../../../winix/core/request.h ../../../winix/core/system.h
templates.o: ../../../winix/core/synchro.h
templates.o: ../../../winix/functions/functionparser.h
templates.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
templates.o: ../../../winix/functions/adduser.h
templates.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
templates.o: ../../../winix/functions/privchanger.h
templates.o: ../../../winix/functions/chown.h
templates.o: ../../../winix/functions/ckeditor.h
templates.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
templates.o: ../../../winix/functions/download.h
templates.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
templates.o: ../../../winix/functions/imgcrop.h
templates.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
templates.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
templates.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
templates.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
templates.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
templates.o: ../../../winix/functions/node.h
templates.o: ../../../winix/functions/passwd.h
templates.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
templates.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
templates.o: ../../../winix/functions/rmuser.h
templates.o: ../../../winix/functions/sort.h
templates.o: ../../../winix/functions/specialdefault.h
templates.o: ../../../winix/functions/stat.h
templates.o: ../../../winix/functions/subject.h
templates.o: ../../../winix/functions/template.h
templates.o: ../../../winix/functions/tinymce.h
templates.o: ../../../winix/functions/uname.h
templates.o: ../../../winix/functions/upload.h
templates.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
templates.o: ../../../winix/functions/vim.h ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/templates.h
templates.o: ../../../winix/templates/patterncacher.h
templates.o: ../../../winix/templates/indexpatterns.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/changepatterns.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/core/sessionmanager.h ../../../winix/core/misc.h
templates.o: stats.h ../../../winix/templates/misc.h

View File

@@ -1 +0,0 @@
o = bot.o init.o stats.o templates.o

View File

@@ -1,28 +0,0 @@
include Makefile.o.dep
name = thread.so
all: $(name)
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,613 +0,0 @@
# DO NOT DELETE
createthread.o: createthread.h ../../../winix/functions/functionbase.h
createthread.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
createthread.o: ../../../pikotools/textstream/types.h
createthread.o: ../../../pikotools/date/date.h ../../../winix/db/db.h
createthread.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
createthread.o: ../../../winix/db/dbtextstream.h
createthread.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
createthread.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
createthread.o: ../../../pikotools/textstream/textstream.h
createthread.o: ../../../pikotools/convert/convert.h
createthread.o: ../../../pikotools/convert/inttostr.h
createthread.o: ../../../pikotools/membuffer/membuffer.h
createthread.o: ../../../pikotools/textstream/types.h
createthread.o: ../../../pikotools/utf8/utf8.h
createthread.o: ../../../winix/core/winix_const.h ../../../winix/core/error.h
createthread.o: ../../../pikotools/space/spaceparser.h
createthread.o: ../../../pikotools/space/space.h
createthread.o: ../../../winix/db/dbitemquery.h
createthread.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
createthread.o: ../../../winix/core/group.h
createthread.o: ../../../winix/core/dircontainer.h
createthread.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
createthread.o: ../../../winix/core/textstream.h
createthread.o: ../../../winix/core/logmanipulators.h
createthread.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
createthread.o: ../../../winix/core/request.h ../../../winix/core/error.h
createthread.o: ../../../winix/core/config.h ../../../winix/core/htmlfilter.h
createthread.o: ../../../winix/templates/htmltextstream.h
createthread.o: ../../../pikotools/space/spacetojson.h
createthread.o: ../../../winix/core/session.h ../../../winix/core/user.h
createthread.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
createthread.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
createthread.o: ../../../winix/templates/locale.h
createthread.o: ../../../winix/core/request.h ../../../winix/core/config.h
createthread.o: ../../../winix/core/system.h ../../../winix/core/job.h
createthread.o: ../../../winix/core/basethread.h
createthread.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
createthread.o: ../../../winix/core/dircontainer.h
createthread.o: ../../../winix/notify/notify.h
createthread.o: ../../../winix/notify/notifypool.h
createthread.o: ../../../winix/templates/patterns.h
createthread.o: ../../../winix/templates/locale.h
createthread.o: ../../../winix/templates/localefilter.h
createthread.o: ../../../ezc/src/ezc.h ../../../ezc/src/generator.h
createthread.o: ../../../ezc/src/blocks.h ../../../ezc/src/cache.h
createthread.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
createthread.o: ../../../ezc/src/pattern.h ../../../ezc/src/patternparser.h
createthread.o: ../../../winix/notify/notifythread.h
createthread.o: ../../../winix/core/basethread.h
createthread.o: ../../../winix/notify/templatesnotify.h
createthread.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
createthread.o: ../../../winix/core/lastcontainer.h
createthread.o: ../../../winix/core/mounts.h
createthread.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
createthread.o: ../../../winix/core/run.h ../../../winix/core/users.h
createthread.o: ../../../winix/core/groups.h ../../../winix/core/group.h
createthread.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
createthread.o: ../../../winix/core/threadmanager.h
createthread.o: ../../../winix/core/timezones.h
createthread.o: ../../../winix/core/timezone.h ../../../winix/core/synchro.h
createthread.o: tdb.h thread.h ../../../winix/db/dbbase.h threadinfo.h
createthread.o: ../../../winix/functions/functions.h
createthread.o: ../../../winix/functions/functionbase.h
createthread.o: ../../../winix/functions/functionparser.h
createthread.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
createthread.o: ../../../winix/functions/adduser.h
createthread.o: ../../../winix/functions/cat.h
createthread.o: ../../../winix/functions/chmod.h
createthread.o: ../../../winix/functions/privchanger.h
createthread.o: ../../../winix/functions/chown.h
createthread.o: ../../../winix/functions/ckeditor.h
createthread.o: ../../../winix/functions/cp.h
createthread.o: ../../../winix/functions/default.h
createthread.o: ../../../winix/functions/download.h
createthread.o: ../../../winix/functions/emacs.h
createthread.o: ../../../winix/functions/env.h
createthread.o: ../../../winix/functions/imgcrop.h
createthread.o: ../../../winix/functions/last.h
createthread.o: ../../../winix/functions/login.h
createthread.o: ../../../winix/functions/logout.h
createthread.o: ../../../winix/functions/ln.h ../../../winix/functions/ls.h
createthread.o: ../../../winix/functions/man.h
createthread.o: ../../../winix/functions/meta.h
createthread.o: ../../../winix/functions/mkdir.h
createthread.o: ../../../winix/functions/mv.h
createthread.o: ../../../winix/functions/nicedit.h
createthread.o: ../../../winix/functions/node.h
createthread.o: ../../../winix/functions/passwd.h
createthread.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
createthread.o: ../../../winix/functions/reload.h
createthread.o: ../../../winix/functions/rm.h
createthread.o: ../../../winix/functions/rmuser.h
createthread.o: ../../../winix/functions/sort.h
createthread.o: ../../../winix/functions/specialdefault.h
createthread.o: ../../../winix/functions/stat.h
createthread.o: ../../../winix/functions/subject.h
createthread.o: ../../../winix/functions/template.h
createthread.o: ../../../winix/functions/tinymce.h
createthread.o: ../../../winix/functions/uname.h
createthread.o: ../../../winix/functions/upload.h
createthread.o: ../../../winix/functions/uptime.h
createthread.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
createthread.o: ../../../winix/core/htmlfilter.h
funthread.o: ../../../winix/core/misc.h ../../../winix/core/item.h
funthread.o: ../../../winix/core/requesttypes.h
funthread.o: ../../../pikotools/textstream/textstream.h
funthread.o: ../../../pikotools/space/space.h
funthread.o: ../../../pikotools/textstream/types.h
funthread.o: ../../../pikotools/date/date.h
funthread.o: ../../../pikotools/convert/convert.h
funthread.o: ../../../pikotools/convert/inttostr.h
funthread.o: ../../../pikotools/membuffer/membuffer.h
funthread.o: ../../../pikotools/textstream/types.h
funthread.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
funthread.o: funthread.h ../../../winix/functions/functionbase.h
funthread.o: ../../../winix/core/item.h ../../../winix/db/db.h
funthread.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
funthread.o: ../../../winix/db/dbtextstream.h
funthread.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
funthread.o: ../../../winix/core/error.h
funthread.o: ../../../pikotools/space/spaceparser.h
funthread.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
funthread.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
funthread.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
funthread.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
funthread.o: ../../../winix/core/textstream.h
funthread.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
funthread.o: ../../../winix/core/cur.h ../../../winix/core/request.h
funthread.o: ../../../winix/core/error.h ../../../winix/core/config.h
funthread.o: ../../../winix/core/htmlfilter.h
funthread.o: ../../../winix/templates/htmltextstream.h
funthread.o: ../../../pikotools/space/spacetojson.h
funthread.o: ../../../winix/core/session.h ../../../winix/core/user.h
funthread.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
funthread.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
funthread.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
funthread.o: ../../../winix/core/config.h ../../../winix/core/system.h
funthread.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
funthread.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
funthread.o: ../../../winix/core/dircontainer.h
funthread.o: ../../../winix/notify/notify.h
funthread.o: ../../../winix/notify/notifypool.h
funthread.o: ../../../winix/templates/patterns.h
funthread.o: ../../../winix/templates/locale.h
funthread.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
funthread.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
funthread.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
funthread.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
funthread.o: ../../../ezc/src/patternparser.h
funthread.o: ../../../winix/notify/notifythread.h
funthread.o: ../../../winix/core/basethread.h
funthread.o: ../../../winix/notify/templatesnotify.h
funthread.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
funthread.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
funthread.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
funthread.o: ../../../winix/core/run.h ../../../winix/core/users.h
funthread.o: ../../../winix/core/groups.h ../../../winix/core/group.h
funthread.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
funthread.o: ../../../winix/core/threadmanager.h
funthread.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
funthread.o: ../../../winix/core/synchro.h tdb.h thread.h
funthread.o: ../../../winix/db/dbbase.h threadinfo.h
init.o: tdb.h thread.h ../../../pikotools/date/date.h
init.o: ../../../winix/db/dbbase.h ../../../winix/core/error.h reply.h
init.o: ../../../winix/functions/functionbase.h ../../../winix/core/item.h
init.o: ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h ../../../winix/db/db.h
init.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
init.o: ../../../winix/db/dbtextstream.h ../../../winix/core/textstream.h
init.o: ../../../winix/core/misc.h ../../../winix/core/item.h
init.o: ../../../winix/core/requesttypes.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/utf8/utf8.h
init.o: ../../../winix/core/winix_const.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
init.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
init.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
init.o: ../../../winix/core/textstream.h
init.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/request.h ../../../winix/core/config.h
init.o: ../../../winix/core/system.h ../../../winix/core/job.h
init.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
init.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
init.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/users.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/lastcontainer.h
init.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
init.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
init.o: ../../../winix/core/users.h ../../../winix/core/groups.h
init.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
init.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
init.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
init.o: ../../../winix/core/synchro.h threadinfo.h funthread.h createthread.h
init.o: showthreads.h ../../../winix/core/log.h ../../../winix/core/plugin.h
init.o: pluginmsg.h ../../../winix/core/system.h
init.o: ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h templates.h
reply.o: ../../../winix/core/plugin.h pluginmsg.h ../../../winix/core/log.h
reply.o: ../../../winix/core/textstream.h
reply.o: ../../../winix/core/logmanipulators.h
reply.o: ../../../pikotools/textstream/textstream.h
reply.o: ../../../pikotools/space/space.h
reply.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
reply.o: ../../../pikotools/convert/convert.h
reply.o: ../../../pikotools/convert/inttostr.h
reply.o: ../../../pikotools/membuffer/membuffer.h
reply.o: ../../../pikotools/textstream/types.h ../../../winix/core/slog.h
reply.o: ../../../winix/core/cur.h ../../../winix/core/request.h
reply.o: ../../../winix/core/requesttypes.h ../../../winix/core/item.h
reply.o: ../../../winix/core/error.h ../../../winix/core/config.h
reply.o: ../../../pikotools/space/spaceparser.h
reply.o: ../../../pikotools/space/space.h ../../../winix/core/htmlfilter.h
reply.o: ../../../winix/templates/htmltextstream.h
reply.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
reply.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
reply.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
reply.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
reply.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
reply.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
reply.o: ../../../winix/core/system.h ../../../winix/core/sessionmanager.h
reply.o: ../../../winix/core/sessioncontainer.h
reply.o: ../../../winix/core/ipbancontainer.h
reply.o: ../../../winix/core/lastcontainer.h ../../../winix/core/synchro.h
reply.o: ../../../winix/core/basethread.h
reply.o: ../../../winix/functions/functions.h
reply.o: ../../../winix/functions/functionbase.h
reply.o: ../../../winix/functions/functionparser.h ../../../winix/db/db.h
reply.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
reply.o: ../../../winix/db/dbtextstream.h ../../../winix/core/error.h
reply.o: ../../../winix/db/dbitemquery.h ../../../winix/core/item.h
reply.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
reply.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
reply.o: ../../../winix/core/ugcontainer.h ../../../winix/core/cur.h
reply.o: ../../../winix/core/system.h ../../../winix/core/job.h
reply.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
reply.o: ../../../winix/notify/notify.h ../../../winix/notify/notifypool.h
reply.o: ../../../winix/templates/patterns.h
reply.o: ../../../winix/templates/locale.h
reply.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
reply.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
reply.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
reply.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
reply.o: ../../../ezc/src/patternparser.h
reply.o: ../../../winix/notify/notifythread.h
reply.o: ../../../winix/core/basethread.h
reply.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/config.h
reply.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
reply.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
reply.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
reply.o: ../../../winix/core/users.h ../../../winix/core/groups.h
reply.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
reply.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
reply.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
reply.o: ../../../winix/functions/account.h
reply.o: ../../../winix/functions/adduser.h ../../../winix/functions/cat.h
reply.o: ../../../winix/functions/chmod.h
reply.o: ../../../winix/functions/privchanger.h ../../../winix/core/request.h
reply.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
reply.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
reply.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
reply.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
reply.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
reply.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
reply.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
reply.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
reply.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
reply.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
reply.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
reply.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
reply.o: ../../../winix/functions/rmuser.h ../../../winix/functions/sort.h
reply.o: ../../../winix/functions/specialdefault.h
reply.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
reply.o: ../../../winix/functions/template.h
reply.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
reply.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
reply.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
reply.o: ../../../winix/core/htmlfilter.h
reply.o: ../../../winix/templates/templates.h
reply.o: ../../../winix/templates/patterncacher.h
reply.o: ../../../winix/templates/indexpatterns.h
reply.o: ../../../winix/templates/patterns.h
reply.o: ../../../winix/templates/changepatterns.h
reply.o: ../../../winix/templates/htmltextstream.h
reply.o: ../../../winix/core/sessionmanager.h reply.h
reply.o: ../../../winix/functions/functionbase.h
reply.o: ../../../winix/core/synchro.h tdb.h thread.h
reply.o: ../../../winix/db/dbbase.h threadinfo.h ../../../winix/core/misc.h
showthreads.o: showthreads.h ../../../winix/functions/functionbase.h
showthreads.o: ../../../winix/core/item.h ../../../pikotools/space/space.h
showthreads.o: ../../../pikotools/textstream/types.h
showthreads.o: ../../../pikotools/date/date.h ../../../winix/db/db.h
showthreads.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
showthreads.o: ../../../winix/db/dbtextstream.h
showthreads.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
showthreads.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
showthreads.o: ../../../pikotools/textstream/textstream.h
showthreads.o: ../../../pikotools/convert/convert.h
showthreads.o: ../../../pikotools/convert/inttostr.h
showthreads.o: ../../../pikotools/membuffer/membuffer.h
showthreads.o: ../../../pikotools/textstream/types.h
showthreads.o: ../../../pikotools/utf8/utf8.h
showthreads.o: ../../../winix/core/winix_const.h ../../../winix/core/error.h
showthreads.o: ../../../pikotools/space/spaceparser.h
showthreads.o: ../../../pikotools/space/space.h
showthreads.o: ../../../winix/db/dbitemquery.h
showthreads.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
showthreads.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
showthreads.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
showthreads.o: ../../../winix/core/textstream.h
showthreads.o: ../../../winix/core/logmanipulators.h
showthreads.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
showthreads.o: ../../../winix/core/request.h ../../../winix/core/error.h
showthreads.o: ../../../winix/core/config.h ../../../winix/core/htmlfilter.h
showthreads.o: ../../../winix/templates/htmltextstream.h
showthreads.o: ../../../pikotools/space/spacetojson.h
showthreads.o: ../../../winix/core/session.h ../../../winix/core/user.h
showthreads.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
showthreads.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
showthreads.o: ../../../winix/templates/locale.h
showthreads.o: ../../../winix/core/request.h ../../../winix/core/config.h
showthreads.o: ../../../winix/core/system.h ../../../winix/core/job.h
showthreads.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
showthreads.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
showthreads.o: ../../../winix/notify/notify.h
showthreads.o: ../../../winix/notify/notifypool.h
showthreads.o: ../../../winix/templates/patterns.h
showthreads.o: ../../../winix/templates/locale.h
showthreads.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
showthreads.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
showthreads.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
showthreads.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
showthreads.o: ../../../ezc/src/patternparser.h
showthreads.o: ../../../winix/notify/notifythread.h
showthreads.o: ../../../winix/core/basethread.h
showthreads.o: ../../../winix/notify/templatesnotify.h
showthreads.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
showthreads.o: ../../../winix/core/lastcontainer.h
showthreads.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
showthreads.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
showthreads.o: ../../../winix/core/users.h ../../../winix/core/groups.h
showthreads.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
showthreads.o: ../../../winix/core/image.h
showthreads.o: ../../../winix/core/threadmanager.h
showthreads.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
showthreads.o: ../../../winix/core/synchro.h tdb.h thread.h
showthreads.o: ../../../winix/db/dbbase.h threadinfo.h
tdb.o: tdb.h thread.h ../../../pikotools/date/date.h
tdb.o: ../../../winix/db/dbbase.h ../../../winix/core/error.h
tdb.o: ../../../winix/core/log.h
templates.o: threadinfo.h ../../../winix/core/item.h
templates.o: ../../../pikotools/space/space.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/date/date.h ../../../winix/core/system.h
templates.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
templates.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
templates.o: ../../../winix/core/item.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
templates.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
templates.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
templates.o: ../../../winix/core/requesttypes.h
templates.o: ../../../pikotools/textstream/textstream.h
templates.o: ../../../pikotools/convert/convert.h
templates.o: ../../../pikotools/convert/inttostr.h
templates.o: ../../../pikotools/membuffer/membuffer.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
templates.o: ../../../winix/core/error.h
templates.o: ../../../pikotools/space/spaceparser.h
templates.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
templates.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
templates.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
templates.o: ../../../winix/core/textstream.h
templates.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
templates.o: ../../../winix/core/cur.h ../../../winix/core/request.h
templates.o: ../../../winix/core/error.h ../../../winix/core/config.h
templates.o: ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../pikotools/space/spacetojson.h
templates.o: ../../../winix/core/session.h ../../../winix/core/user.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
templates.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
templates.o: ../../../winix/templates/locale.h ../../../winix/notify/notify.h
templates.o: ../../../winix/notify/notifypool.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
templates.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
templates.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
templates.o: ../../../ezc/src/patternparser.h
templates.o: ../../../winix/notify/notifythread.h
templates.o: ../../../winix/core/basethread.h
templates.o: ../../../winix/notify/templatesnotify.h
templates.o: ../../../winix/core/config.h ../../../winix/core/users.h
templates.o: ../../../winix/core/ugcontainer.h
templates.o: ../../../winix/core/lastcontainer.h ../../../winix/core/mounts.h
templates.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
templates.o: ../../../winix/core/run.h ../../../winix/core/users.h
templates.o: ../../../winix/core/groups.h ../../../winix/core/group.h
templates.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
templates.o: ../../../winix/core/threadmanager.h
templates.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
templates.o: thread.h tdb.h ../../../winix/db/dbbase.h reply.h
templates.o: ../../../winix/functions/functionbase.h
templates.o: ../../../winix/core/request.h ../../../winix/core/synchro.h
templates.o: funthread.h createthread.h showthreads.h
templates.o: ../../../winix/core/misc.h ../../../winix/core/plugin.h
templates.o: pluginmsg.h ../../../winix/core/system.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/sessioncontainer.h
templates.o: ../../../winix/core/ipbancontainer.h
templates.o: ../../../winix/functions/functions.h
templates.o: ../../../winix/functions/functionbase.h
templates.o: ../../../winix/functions/functionparser.h
templates.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
templates.o: ../../../winix/functions/adduser.h
templates.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
templates.o: ../../../winix/functions/privchanger.h
templates.o: ../../../winix/functions/chown.h
templates.o: ../../../winix/functions/ckeditor.h
templates.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
templates.o: ../../../winix/functions/download.h
templates.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
templates.o: ../../../winix/functions/imgcrop.h
templates.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
templates.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
templates.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
templates.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
templates.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
templates.o: ../../../winix/functions/node.h
templates.o: ../../../winix/functions/passwd.h
templates.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
templates.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
templates.o: ../../../winix/functions/rmuser.h
templates.o: ../../../winix/functions/sort.h
templates.o: ../../../winix/functions/specialdefault.h
templates.o: ../../../winix/functions/stat.h
templates.o: ../../../winix/functions/subject.h
templates.o: ../../../winix/functions/template.h
templates.o: ../../../winix/functions/tinymce.h
templates.o: ../../../winix/functions/uname.h
templates.o: ../../../winix/functions/upload.h
templates.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
templates.o: ../../../winix/functions/vim.h ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/templates.h
templates.o: ../../../winix/templates/patterncacher.h
templates.o: ../../../winix/templates/indexpatterns.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/changepatterns.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/core/sessionmanager.h
threadinfo.o: threadinfo.h ../../../winix/core/item.h
threadinfo.o: ../../../pikotools/space/space.h
threadinfo.o: ../../../pikotools/textstream/types.h
threadinfo.o: ../../../pikotools/date/date.h ../../../winix/core/system.h
threadinfo.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
threadinfo.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
threadinfo.o: ../../../winix/core/item.h ../../../winix/core/dircontainer.h
threadinfo.o: ../../../winix/db/db.h ../../../winix/db/dbbase.h
threadinfo.o: ../../../winix/db/dbconn.h ../../../winix/db/dbtextstream.h
threadinfo.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
threadinfo.o: ../../../winix/core/requesttypes.h
threadinfo.o: ../../../pikotools/textstream/textstream.h
threadinfo.o: ../../../pikotools/convert/convert.h
threadinfo.o: ../../../pikotools/convert/inttostr.h
threadinfo.o: ../../../pikotools/membuffer/membuffer.h
threadinfo.o: ../../../pikotools/textstream/types.h
threadinfo.o: ../../../pikotools/utf8/utf8.h
threadinfo.o: ../../../winix/core/winix_const.h ../../../winix/core/error.h
threadinfo.o: ../../../pikotools/space/spaceparser.h
threadinfo.o: ../../../pikotools/space/space.h
threadinfo.o: ../../../winix/db/dbitemquery.h
threadinfo.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
threadinfo.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
threadinfo.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
threadinfo.o: ../../../winix/core/textstream.h
threadinfo.o: ../../../winix/core/logmanipulators.h
threadinfo.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
threadinfo.o: ../../../winix/core/request.h ../../../winix/core/error.h
threadinfo.o: ../../../winix/core/config.h ../../../winix/core/htmlfilter.h
threadinfo.o: ../../../winix/templates/htmltextstream.h
threadinfo.o: ../../../pikotools/space/spacetojson.h
threadinfo.o: ../../../winix/core/session.h ../../../winix/core/user.h
threadinfo.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
threadinfo.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
threadinfo.o: ../../../winix/templates/locale.h
threadinfo.o: ../../../winix/notify/notify.h
threadinfo.o: ../../../winix/notify/notifypool.h
threadinfo.o: ../../../winix/templates/patterns.h
threadinfo.o: ../../../winix/templates/locale.h
threadinfo.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
threadinfo.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
threadinfo.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
threadinfo.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
threadinfo.o: ../../../ezc/src/patternparser.h
threadinfo.o: ../../../winix/notify/notifythread.h
threadinfo.o: ../../../winix/core/basethread.h
threadinfo.o: ../../../winix/notify/templatesnotify.h
threadinfo.o: ../../../winix/core/config.h ../../../winix/core/users.h
threadinfo.o: ../../../winix/core/ugcontainer.h
threadinfo.o: ../../../winix/core/lastcontainer.h
threadinfo.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
threadinfo.o: ../../../winix/core/crypt.h ../../../winix/core/run.h
threadinfo.o: ../../../winix/core/users.h ../../../winix/core/groups.h
threadinfo.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
threadinfo.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
threadinfo.o: ../../../winix/core/timezones.h ../../../winix/core/timezone.h
threadinfo.o: thread.h tdb.h ../../../winix/db/dbbase.h
threadinfo.o: ../../../winix/core/plugin.h pluginmsg.h
threadinfo.o: ../../../winix/core/system.h
threadinfo.o: ../../../winix/core/sessionmanager.h
threadinfo.o: ../../../winix/core/sessioncontainer.h
threadinfo.o: ../../../winix/core/ipbancontainer.h
threadinfo.o: ../../../winix/functions/functions.h
threadinfo.o: ../../../winix/functions/functionbase.h
threadinfo.o: ../../../winix/functions/functionparser.h
threadinfo.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
threadinfo.o: ../../../winix/functions/adduser.h
threadinfo.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
threadinfo.o: ../../../winix/functions/privchanger.h
threadinfo.o: ../../../winix/core/request.h ../../../winix/functions/chown.h
threadinfo.o: ../../../winix/functions/ckeditor.h
threadinfo.o: ../../../winix/functions/cp.h
threadinfo.o: ../../../winix/functions/default.h
threadinfo.o: ../../../winix/functions/download.h
threadinfo.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
threadinfo.o: ../../../winix/functions/imgcrop.h
threadinfo.o: ../../../winix/functions/last.h
threadinfo.o: ../../../winix/functions/login.h
threadinfo.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
threadinfo.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
threadinfo.o: ../../../winix/functions/meta.h
threadinfo.o: ../../../winix/functions/mkdir.h ../../../winix/functions/mv.h
threadinfo.o: ../../../winix/functions/nicedit.h
threadinfo.o: ../../../winix/functions/node.h
threadinfo.o: ../../../winix/functions/passwd.h
threadinfo.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
threadinfo.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
threadinfo.o: ../../../winix/functions/rmuser.h
threadinfo.o: ../../../winix/functions/sort.h
threadinfo.o: ../../../winix/functions/specialdefault.h
threadinfo.o: ../../../winix/functions/stat.h
threadinfo.o: ../../../winix/functions/subject.h
threadinfo.o: ../../../winix/functions/template.h
threadinfo.o: ../../../winix/functions/tinymce.h
threadinfo.o: ../../../winix/functions/uname.h
threadinfo.o: ../../../winix/functions/upload.h
threadinfo.o: ../../../winix/functions/uptime.h
threadinfo.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
threadinfo.o: ../../../winix/core/htmlfilter.h
threadinfo.o: ../../../winix/templates/templates.h
threadinfo.o: ../../../winix/templates/patterncacher.h
threadinfo.o: ../../../winix/templates/indexpatterns.h
threadinfo.o: ../../../winix/templates/patterns.h
threadinfo.o: ../../../winix/templates/changepatterns.h
threadinfo.o: ../../../winix/templates/htmltextstream.h
threadinfo.o: ../../../winix/core/sessionmanager.h

View File

@@ -1,28 +0,0 @@
include Makefile.o.dep
name = ticket.so
all: $(name)
$(name): $(o)
$(CXX) -shared -Wl,-soname,$(name) -o $(name) $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $(LDFLAGS) *.o
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
rm -f *.so
rm -f $(name)
include Makefile.dep

View File

@@ -1,759 +0,0 @@
# DO NOT DELETE
createticket.o: ../../../winix/core/plugin.h pluginmsg.h
createticket.o: ../../../winix/core/log.h ../../../winix/core/textstream.h
createticket.o: ../../../winix/core/misc.h ../../../winix/core/item.h
createticket.o: ../../../pikotools/space/space.h
createticket.o: ../../../pikotools/textstream/types.h
createticket.o: ../../../pikotools/date/date.h
createticket.o: ../../../winix/core/requesttypes.h
createticket.o: ../../../pikotools/textstream/textstream.h
createticket.o: ../../../pikotools/convert/convert.h
createticket.o: ../../../pikotools/convert/inttostr.h
createticket.o: ../../../pikotools/membuffer/membuffer.h
createticket.o: ../../../pikotools/textstream/types.h
createticket.o: ../../../pikotools/utf8/utf8.h
createticket.o: ../../../winix/core/winix_const.h
createticket.o: ../../../winix/core/logmanipulators.h
createticket.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
createticket.o: ../../../winix/core/request.h ../../../winix/core/error.h
createticket.o: ../../../winix/core/config.h
createticket.o: ../../../pikotools/space/spaceparser.h
createticket.o: ../../../pikotools/space/space.h
createticket.o: ../../../winix/core/htmlfilter.h
createticket.o: ../../../winix/templates/htmltextstream.h
createticket.o: ../../../winix/core/textstream.h
createticket.o: ../../../pikotools/space/spacetojson.h
createticket.o: ../../../winix/core/session.h ../../../winix/core/user.h
createticket.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
createticket.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
createticket.o: ../../../winix/templates/locale.h
createticket.o: ../../../winix/core/system.h ../../../winix/core/job.h
createticket.o: ../../../winix/core/basethread.h
createticket.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
createticket.o: ../../../winix/core/dircontainer.h ../../../winix/db/db.h
createticket.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
createticket.o: ../../../winix/db/dbtextstream.h ../../../winix/core/error.h
createticket.o: ../../../winix/db/dbitemquery.h ../../../winix/core/item.h
createticket.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
createticket.o: ../../../winix/core/group.h
createticket.o: ../../../winix/core/dircontainer.h
createticket.o: ../../../winix/core/ugcontainer.h
createticket.o: ../../../winix/notify/notify.h
createticket.o: ../../../winix/notify/notifypool.h
createticket.o: ../../../winix/templates/patterns.h
createticket.o: ../../../winix/templates/locale.h
createticket.o: ../../../winix/templates/localefilter.h
createticket.o: ../../../ezc/src/ezc.h ../../../ezc/src/generator.h
createticket.o: ../../../ezc/src/blocks.h ../../../ezc/src/cache.h
createticket.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
createticket.o: ../../../ezc/src/pattern.h ../../../ezc/src/patternparser.h
createticket.o: ../../../winix/notify/notifythread.h
createticket.o: ../../../winix/core/basethread.h
createticket.o: ../../../winix/notify/templatesnotify.h
createticket.o: ../../../winix/core/config.h ../../../winix/core/users.h
createticket.o: ../../../winix/core/ugcontainer.h
createticket.o: ../../../winix/core/lastcontainer.h
createticket.o: ../../../winix/core/mounts.h
createticket.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
createticket.o: ../../../winix/core/run.h ../../../winix/core/users.h
createticket.o: ../../../winix/core/groups.h ../../../winix/core/group.h
createticket.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
createticket.o: ../../../winix/core/threadmanager.h
createticket.o: ../../../winix/core/timezones.h
createticket.o: ../../../winix/core/timezone.h
createticket.o: ../../../winix/core/sessionmanager.h
createticket.o: ../../../winix/core/sessioncontainer.h
createticket.o: ../../../winix/core/ipbancontainer.h
createticket.o: ../../../winix/functions/functions.h
createticket.o: ../../../winix/functions/functionbase.h
createticket.o: ../../../winix/core/request.h ../../../winix/core/system.h
createticket.o: ../../../winix/core/synchro.h
createticket.o: ../../../winix/functions/functionparser.h
createticket.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
createticket.o: ../../../winix/functions/adduser.h
createticket.o: ../../../winix/functions/cat.h
createticket.o: ../../../winix/functions/chmod.h
createticket.o: ../../../winix/functions/privchanger.h
createticket.o: ../../../winix/functions/chown.h
createticket.o: ../../../winix/functions/ckeditor.h
createticket.o: ../../../winix/functions/cp.h
createticket.o: ../../../winix/functions/default.h
createticket.o: ../../../winix/functions/download.h
createticket.o: ../../../winix/functions/emacs.h
createticket.o: ../../../winix/functions/env.h
createticket.o: ../../../winix/functions/imgcrop.h
createticket.o: ../../../winix/functions/last.h
createticket.o: ../../../winix/functions/login.h
createticket.o: ../../../winix/functions/logout.h
createticket.o: ../../../winix/functions/ln.h ../../../winix/functions/ls.h
createticket.o: ../../../winix/functions/man.h
createticket.o: ../../../winix/functions/meta.h
createticket.o: ../../../winix/functions/mkdir.h
createticket.o: ../../../winix/functions/mv.h
createticket.o: ../../../winix/functions/nicedit.h
createticket.o: ../../../winix/functions/node.h
createticket.o: ../../../winix/functions/passwd.h
createticket.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
createticket.o: ../../../winix/functions/reload.h
createticket.o: ../../../winix/functions/rm.h
createticket.o: ../../../winix/functions/rmuser.h
createticket.o: ../../../winix/functions/sort.h
createticket.o: ../../../winix/functions/specialdefault.h
createticket.o: ../../../winix/functions/stat.h
createticket.o: ../../../winix/functions/subject.h
createticket.o: ../../../winix/functions/template.h
createticket.o: ../../../winix/functions/tinymce.h
createticket.o: ../../../winix/functions/uname.h
createticket.o: ../../../winix/functions/upload.h
createticket.o: ../../../winix/functions/uptime.h
createticket.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
createticket.o: ../../../winix/core/htmlfilter.h
createticket.o: ../../../winix/templates/templates.h
createticket.o: ../../../winix/templates/patterncacher.h
createticket.o: ../../../winix/templates/indexpatterns.h
createticket.o: ../../../winix/templates/patterns.h
createticket.o: ../../../winix/templates/changepatterns.h
createticket.o: ../../../winix/templates/htmltextstream.h
createticket.o: ../../../winix/core/sessionmanager.h createticket.h tdb.h
createticket.o: ticket.h ../../../winix/db/dbbase.h
createticket.o: ../../../winix/functions/functionbase.h ticketinfo.h
createticket.o: sessiondata.h ../../../winix/core/plugindata.h
createticket.o: ../../../winix/functions/rm.h
editticket.o: editticket.h tdb.h ticket.h ../../../winix/db/dbbase.h
editticket.o: ../../../winix/core/error.h ticketinfo.h
editticket.o: ../../../winix/core/item.h ../../../winix/core/system.h
editticket.o: ../../../winix/functions/functions.h
editticket.o: ../../../winix/functions/functionbase.h ../../../winix/db/db.h
editticket.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
editticket.o: ../../../winix/db/dbtextstream.h
editticket.o: ../../../winix/core/textstream.h
editticket.o: ../../../pikotools/textstream/textstream.h
editticket.o: ../../../pikotools/space/space.h
editticket.o: ../../../pikotools/textstream/types.h
editticket.o: ../../../pikotools/date/date.h
editticket.o: ../../../pikotools/convert/convert.h
editticket.o: ../../../pikotools/convert/inttostr.h
editticket.o: ../../../pikotools/membuffer/membuffer.h
editticket.o: ../../../pikotools/textstream/types.h
editticket.o: ../../../pikotools/space/spaceparser.h
editticket.o: ../../../pikotools/space/space.h
editticket.o: ../../../winix/db/dbitemquery.h
editticket.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
editticket.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
editticket.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
editticket.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
editticket.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
editticket.o: ../../../pikotools/utf8/utf8.h
editticket.o: ../../../winix/core/winix_const.h
editticket.o: ../../../winix/core/logmanipulators.h
editticket.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
editticket.o: ../../../winix/core/request.h ../../../winix/core/error.h
editticket.o: ../../../winix/core/config.h ../../../winix/core/htmlfilter.h
editticket.o: ../../../winix/templates/htmltextstream.h
editticket.o: ../../../pikotools/space/spacetojson.h
editticket.o: ../../../winix/core/session.h ../../../winix/core/user.h
editticket.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
editticket.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
editticket.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
editticket.o: ../../../winix/core/config.h ../../../winix/core/synchro.h
editticket.o: ../../../winix/notify/notify.h
editticket.o: ../../../winix/notify/notifypool.h
editticket.o: ../../../winix/templates/patterns.h
editticket.o: ../../../winix/templates/locale.h
editticket.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
editticket.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
editticket.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
editticket.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
editticket.o: ../../../ezc/src/patternparser.h
editticket.o: ../../../winix/notify/notifythread.h
editticket.o: ../../../winix/core/basethread.h
editticket.o: ../../../winix/notify/templatesnotify.h
editticket.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
editticket.o: ../../../winix/core/lastcontainer.h
editticket.o: ../../../winix/functions/functionparser.h
editticket.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
editticket.o: ../../../winix/functions/adduser.h
editticket.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
editticket.o: ../../../winix/functions/privchanger.h
editticket.o: ../../../winix/functions/chown.h
editticket.o: ../../../winix/functions/ckeditor.h
editticket.o: ../../../winix/functions/cp.h
editticket.o: ../../../winix/functions/default.h
editticket.o: ../../../winix/functions/download.h
editticket.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
editticket.o: ../../../winix/functions/imgcrop.h
editticket.o: ../../../winix/functions/last.h
editticket.o: ../../../winix/functions/login.h
editticket.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
editticket.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
editticket.o: ../../../winix/functions/meta.h
editticket.o: ../../../winix/functions/mkdir.h ../../../winix/functions/mv.h
editticket.o: ../../../winix/functions/nicedit.h
editticket.o: ../../../winix/functions/node.h
editticket.o: ../../../winix/functions/passwd.h
editticket.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
editticket.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
editticket.o: ../../../winix/functions/rmuser.h ../../../winix/core/run.h
editticket.o: ../../../winix/functions/sort.h
editticket.o: ../../../winix/functions/specialdefault.h
editticket.o: ../../../winix/functions/stat.h
editticket.o: ../../../winix/functions/subject.h
editticket.o: ../../../winix/functions/template.h
editticket.o: ../../../winix/core/timezone.h
editticket.o: ../../../winix/functions/tinymce.h
editticket.o: ../../../winix/functions/uname.h
editticket.o: ../../../winix/functions/upload.h
editticket.o: ../../../winix/functions/uptime.h
editticket.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
editticket.o: ../../../winix/core/htmlfilter.h
editticket.o: ../../../winix/functions/functionbase.h sessiondata.h
editticket.o: ../../../winix/core/plugindata.h ../../../winix/functions/rm.h
editticket.o: ../../../winix/core/plugin.h pluginmsg.h
editticket.o: ../../../winix/core/system.h ../../../winix/core/job.h
editticket.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
editticket.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
editticket.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
editticket.o: ../../../winix/core/crypt.h ../../../winix/core/users.h
editticket.o: ../../../winix/core/groups.h ../../../winix/core/group.h
editticket.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
editticket.o: ../../../winix/core/threadmanager.h
editticket.o: ../../../winix/core/timezones.h
editticket.o: ../../../winix/core/sessionmanager.h
editticket.o: ../../../winix/core/sessioncontainer.h
editticket.o: ../../../winix/core/ipbancontainer.h
editticket.o: ../../../winix/templates/templates.h
editticket.o: ../../../winix/templates/patterncacher.h
editticket.o: ../../../winix/templates/indexpatterns.h
editticket.o: ../../../winix/templates/patterns.h
editticket.o: ../../../winix/templates/changepatterns.h
editticket.o: ../../../winix/templates/htmltextstream.h
editticket.o: ../../../winix/core/sessionmanager.h
funticket.o: funticket.h tdb.h ticket.h ../../../winix/db/dbbase.h
funticket.o: ../../../winix/core/error.h ticketinfo.h
funticket.o: ../../../winix/core/item.h ../../../winix/core/system.h
funticket.o: ../../../winix/functions/functions.h
funticket.o: ../../../winix/functions/functionbase.h ../../../winix/db/db.h
funticket.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
funticket.o: ../../../winix/db/dbtextstream.h
funticket.o: ../../../winix/core/textstream.h
funticket.o: ../../../pikotools/textstream/textstream.h
funticket.o: ../../../pikotools/space/space.h
funticket.o: ../../../pikotools/textstream/types.h
funticket.o: ../../../pikotools/date/date.h
funticket.o: ../../../pikotools/convert/convert.h
funticket.o: ../../../pikotools/convert/inttostr.h
funticket.o: ../../../pikotools/membuffer/membuffer.h
funticket.o: ../../../pikotools/textstream/types.h
funticket.o: ../../../pikotools/space/spaceparser.h
funticket.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
funticket.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
funticket.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
funticket.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
funticket.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
funticket.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
funticket.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
funticket.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
funticket.o: ../../../winix/core/cur.h ../../../winix/core/request.h
funticket.o: ../../../winix/core/error.h ../../../winix/core/config.h
funticket.o: ../../../winix/core/htmlfilter.h
funticket.o: ../../../winix/templates/htmltextstream.h
funticket.o: ../../../pikotools/space/spacetojson.h
funticket.o: ../../../winix/core/session.h ../../../winix/core/user.h
funticket.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
funticket.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
funticket.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
funticket.o: ../../../winix/core/config.h ../../../winix/core/synchro.h
funticket.o: ../../../winix/notify/notify.h
funticket.o: ../../../winix/notify/notifypool.h
funticket.o: ../../../winix/templates/patterns.h
funticket.o: ../../../winix/templates/locale.h
funticket.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
funticket.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
funticket.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
funticket.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
funticket.o: ../../../ezc/src/patternparser.h
funticket.o: ../../../winix/notify/notifythread.h
funticket.o: ../../../winix/core/basethread.h
funticket.o: ../../../winix/notify/templatesnotify.h
funticket.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
funticket.o: ../../../winix/core/lastcontainer.h
funticket.o: ../../../winix/functions/functionparser.h
funticket.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
funticket.o: ../../../winix/functions/adduser.h
funticket.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
funticket.o: ../../../winix/functions/privchanger.h
funticket.o: ../../../winix/functions/chown.h
funticket.o: ../../../winix/functions/ckeditor.h
funticket.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
funticket.o: ../../../winix/functions/download.h
funticket.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
funticket.o: ../../../winix/functions/imgcrop.h
funticket.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
funticket.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
funticket.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
funticket.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
funticket.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
funticket.o: ../../../winix/functions/node.h
funticket.o: ../../../winix/functions/passwd.h
funticket.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
funticket.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
funticket.o: ../../../winix/functions/rmuser.h ../../../winix/core/run.h
funticket.o: ../../../winix/functions/sort.h
funticket.o: ../../../winix/functions/specialdefault.h
funticket.o: ../../../winix/functions/stat.h
funticket.o: ../../../winix/functions/subject.h
funticket.o: ../../../winix/functions/template.h
funticket.o: ../../../winix/core/timezone.h
funticket.o: ../../../winix/functions/tinymce.h
funticket.o: ../../../winix/functions/uname.h
funticket.o: ../../../winix/functions/upload.h
funticket.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
funticket.o: ../../../winix/functions/vim.h ../../../winix/core/htmlfilter.h
funticket.o: ../../../winix/functions/functionbase.h
funticket.o: ../../../winix/core/plugin.h pluginmsg.h
funticket.o: ../../../winix/core/system.h ../../../winix/core/job.h
funticket.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
funticket.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
funticket.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
funticket.o: ../../../winix/core/crypt.h ../../../winix/core/users.h
funticket.o: ../../../winix/core/groups.h ../../../winix/core/group.h
funticket.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
funticket.o: ../../../winix/core/threadmanager.h
funticket.o: ../../../winix/core/timezones.h
funticket.o: ../../../winix/core/sessionmanager.h
funticket.o: ../../../winix/core/sessioncontainer.h
funticket.o: ../../../winix/core/ipbancontainer.h
funticket.o: ../../../winix/templates/templates.h
funticket.o: ../../../winix/templates/patterncacher.h
funticket.o: ../../../winix/templates/indexpatterns.h
funticket.o: ../../../winix/templates/patterns.h
funticket.o: ../../../winix/templates/changepatterns.h
funticket.o: ../../../winix/templates/htmltextstream.h
funticket.o: ../../../winix/core/sessionmanager.h
funticket.o: ../../../winix/plugins/thread/pluginmsg.h
init.o: tdb.h ticket.h ../../../winix/db/dbbase.h ../../../winix/core/error.h
init.o: funticket.h ticketinfo.h ../../../winix/core/item.h
init.o: ../../../winix/core/system.h ../../../winix/functions/functions.h
init.o: ../../../winix/functions/functionbase.h ../../../winix/db/db.h
init.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
init.o: ../../../winix/db/dbtextstream.h ../../../winix/core/textstream.h
init.o: ../../../pikotools/textstream/textstream.h
init.o: ../../../pikotools/space/space.h
init.o: ../../../pikotools/textstream/types.h ../../../pikotools/date/date.h
init.o: ../../../pikotools/convert/convert.h
init.o: ../../../pikotools/convert/inttostr.h
init.o: ../../../pikotools/membuffer/membuffer.h
init.o: ../../../pikotools/textstream/types.h
init.o: ../../../pikotools/space/spaceparser.h
init.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
init.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
init.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
init.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
init.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
init.o: ../../../pikotools/utf8/utf8.h ../../../winix/core/winix_const.h
init.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
init.o: ../../../winix/core/cur.h ../../../winix/core/request.h
init.o: ../../../winix/core/error.h ../../../winix/core/config.h
init.o: ../../../winix/core/htmlfilter.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../pikotools/space/spacetojson.h ../../../winix/core/session.h
init.o: ../../../winix/core/user.h ../../../winix/core/plugindata.h
init.o: ../../../winix/core/rebus.h ../../../winix/core/ipban.h
init.o: ../../../winix/core/mount.h ../../../winix/templates/locale.h
init.o: ../../../winix/core/request.h ../../../winix/core/config.h
init.o: ../../../winix/core/synchro.h ../../../winix/notify/notify.h
init.o: ../../../winix/notify/notifypool.h
init.o: ../../../winix/templates/patterns.h ../../../winix/templates/locale.h
init.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
init.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/patternparser.h ../../../winix/notify/notifythread.h
init.o: ../../../winix/core/basethread.h
init.o: ../../../winix/notify/templatesnotify.h ../../../winix/core/users.h
init.o: ../../../winix/core/ugcontainer.h ../../../winix/core/lastcontainer.h
init.o: ../../../winix/functions/functionparser.h ../../../winix/core/cur.h
init.o: ../../../winix/functions/account.h ../../../winix/functions/adduser.h
init.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
init.o: ../../../winix/functions/privchanger.h
init.o: ../../../winix/functions/chown.h ../../../winix/functions/ckeditor.h
init.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
init.o: ../../../winix/functions/download.h ../../../winix/functions/emacs.h
init.o: ../../../winix/functions/env.h ../../../winix/functions/imgcrop.h
init.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
init.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
init.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
init.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
init.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
init.o: ../../../winix/functions/node.h ../../../winix/functions/passwd.h
init.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
init.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
init.o: ../../../winix/functions/rmuser.h ../../../winix/core/run.h
init.o: ../../../winix/functions/sort.h
init.o: ../../../winix/functions/specialdefault.h
init.o: ../../../winix/functions/stat.h ../../../winix/functions/subject.h
init.o: ../../../winix/functions/template.h ../../../winix/core/timezone.h
init.o: ../../../winix/functions/tinymce.h ../../../winix/functions/uname.h
init.o: ../../../winix/functions/upload.h ../../../winix/functions/uptime.h
init.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
init.o: ../../../winix/core/htmlfilter.h
init.o: ../../../winix/functions/functionbase.h editticket.h createticket.h
init.o: showtickets.h ../../../winix/core/log.h ../../../winix/core/plugin.h
init.o: pluginmsg.h ../../../winix/core/system.h ../../../winix/core/job.h
init.o: ../../../winix/core/basethread.h ../../../winix/core/synchro.h
init.o: ../../../winix/core/dirs.h ../../../winix/core/dircontainer.h
init.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
init.o: ../../../winix/core/crypt.h ../../../winix/core/users.h
init.o: ../../../winix/core/groups.h ../../../winix/core/group.h
init.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
init.o: ../../../winix/core/threadmanager.h ../../../winix/core/timezones.h
init.o: ../../../winix/core/sessionmanager.h
init.o: ../../../winix/core/sessioncontainer.h
init.o: ../../../winix/core/ipbancontainer.h
init.o: ../../../winix/templates/templates.h
init.o: ../../../winix/templates/patterncacher.h
init.o: ../../../winix/templates/indexpatterns.h
init.o: ../../../winix/templates/patterns.h
init.o: ../../../winix/templates/changepatterns.h
init.o: ../../../winix/templates/htmltextstream.h
init.o: ../../../winix/core/sessionmanager.h sessiondata.h
init.o: ../../../winix/core/plugindata.h ../../../winix/functions/rm.h
init.o: ../../../winix/plugins/thread/showthreads.h
init.o: ../../../winix/plugins/thread/threadinfo.h
init.o: ../../../winix/plugins/thread/thread.h
init.o: ../../../winix/plugins/thread/pluginmsg.h
sessiondata.o: sessiondata.h ../../../winix/core/plugindata.h ticket.h
sessiondata.o: ../../../winix/functions/rm.h ../../../pikotools/space/space.h
sessiondata.o: ../../../pikotools/textstream/types.h
showtickets.o: showtickets.h tdb.h ticket.h ../../../winix/db/dbbase.h
showtickets.o: ../../../winix/core/error.h ticketinfo.h
showtickets.o: ../../../winix/core/item.h ../../../winix/core/system.h
showtickets.o: ../../../winix/functions/functions.h
showtickets.o: ../../../winix/functions/functionbase.h ../../../winix/db/db.h
showtickets.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
showtickets.o: ../../../winix/db/dbtextstream.h
showtickets.o: ../../../winix/core/textstream.h
showtickets.o: ../../../pikotools/textstream/textstream.h
showtickets.o: ../../../pikotools/space/space.h
showtickets.o: ../../../pikotools/textstream/types.h
showtickets.o: ../../../pikotools/date/date.h
showtickets.o: ../../../pikotools/convert/convert.h
showtickets.o: ../../../pikotools/convert/inttostr.h
showtickets.o: ../../../pikotools/membuffer/membuffer.h
showtickets.o: ../../../pikotools/textstream/types.h
showtickets.o: ../../../pikotools/space/spaceparser.h
showtickets.o: ../../../pikotools/space/space.h
showtickets.o: ../../../winix/db/dbitemquery.h
showtickets.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
showtickets.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
showtickets.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
showtickets.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
showtickets.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
showtickets.o: ../../../pikotools/utf8/utf8.h
showtickets.o: ../../../winix/core/winix_const.h
showtickets.o: ../../../winix/core/logmanipulators.h
showtickets.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
showtickets.o: ../../../winix/core/request.h ../../../winix/core/error.h
showtickets.o: ../../../winix/core/config.h ../../../winix/core/htmlfilter.h
showtickets.o: ../../../winix/templates/htmltextstream.h
showtickets.o: ../../../pikotools/space/spacetojson.h
showtickets.o: ../../../winix/core/session.h ../../../winix/core/user.h
showtickets.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
showtickets.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
showtickets.o: ../../../winix/templates/locale.h
showtickets.o: ../../../winix/core/request.h ../../../winix/core/config.h
showtickets.o: ../../../winix/core/synchro.h ../../../winix/notify/notify.h
showtickets.o: ../../../winix/notify/notifypool.h
showtickets.o: ../../../winix/templates/patterns.h
showtickets.o: ../../../winix/templates/locale.h
showtickets.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
showtickets.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
showtickets.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
showtickets.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
showtickets.o: ../../../ezc/src/patternparser.h
showtickets.o: ../../../winix/notify/notifythread.h
showtickets.o: ../../../winix/core/basethread.h
showtickets.o: ../../../winix/notify/templatesnotify.h
showtickets.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
showtickets.o: ../../../winix/core/lastcontainer.h
showtickets.o: ../../../winix/functions/functionparser.h
showtickets.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
showtickets.o: ../../../winix/functions/adduser.h
showtickets.o: ../../../winix/functions/cat.h
showtickets.o: ../../../winix/functions/chmod.h
showtickets.o: ../../../winix/functions/privchanger.h
showtickets.o: ../../../winix/functions/chown.h
showtickets.o: ../../../winix/functions/ckeditor.h
showtickets.o: ../../../winix/functions/cp.h
showtickets.o: ../../../winix/functions/default.h
showtickets.o: ../../../winix/functions/download.h
showtickets.o: ../../../winix/functions/emacs.h
showtickets.o: ../../../winix/functions/env.h
showtickets.o: ../../../winix/functions/imgcrop.h
showtickets.o: ../../../winix/functions/last.h
showtickets.o: ../../../winix/functions/login.h
showtickets.o: ../../../winix/functions/logout.h
showtickets.o: ../../../winix/functions/ln.h ../../../winix/functions/ls.h
showtickets.o: ../../../winix/functions/man.h ../../../winix/functions/meta.h
showtickets.o: ../../../winix/functions/mkdir.h ../../../winix/functions/mv.h
showtickets.o: ../../../winix/functions/nicedit.h
showtickets.o: ../../../winix/functions/node.h
showtickets.o: ../../../winix/functions/passwd.h
showtickets.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
showtickets.o: ../../../winix/functions/reload.h
showtickets.o: ../../../winix/functions/rm.h
showtickets.o: ../../../winix/functions/rmuser.h ../../../winix/core/run.h
showtickets.o: ../../../winix/functions/sort.h
showtickets.o: ../../../winix/functions/specialdefault.h
showtickets.o: ../../../winix/functions/stat.h
showtickets.o: ../../../winix/functions/subject.h
showtickets.o: ../../../winix/functions/template.h
showtickets.o: ../../../winix/core/timezone.h
showtickets.o: ../../../winix/functions/tinymce.h
showtickets.o: ../../../winix/functions/uname.h
showtickets.o: ../../../winix/functions/upload.h
showtickets.o: ../../../winix/functions/uptime.h
showtickets.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
showtickets.o: ../../../winix/core/htmlfilter.h
showtickets.o: ../../../winix/functions/functionbase.h pluginmsg.h
showtickets.o: ../../../winix/plugins/thread/pluginmsg.h
showtickets.o: ../../../winix/core/plugin.h ../../../winix/core/system.h
showtickets.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
showtickets.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
showtickets.o: ../../../winix/core/dircontainer.h
showtickets.o: ../../../winix/core/mounts.h ../../../winix/core/mountparser.h
showtickets.o: ../../../winix/core/crypt.h ../../../winix/core/users.h
showtickets.o: ../../../winix/core/groups.h ../../../winix/core/group.h
showtickets.o: ../../../winix/core/loadavg.h ../../../winix/core/image.h
showtickets.o: ../../../winix/core/threadmanager.h
showtickets.o: ../../../winix/core/timezones.h
showtickets.o: ../../../winix/core/sessionmanager.h
showtickets.o: ../../../winix/core/sessioncontainer.h
showtickets.o: ../../../winix/core/ipbancontainer.h
showtickets.o: ../../../winix/templates/templates.h
showtickets.o: ../../../winix/templates/patterncacher.h
showtickets.o: ../../../winix/templates/indexpatterns.h
showtickets.o: ../../../winix/templates/patterns.h
showtickets.o: ../../../winix/templates/changepatterns.h
showtickets.o: ../../../winix/templates/htmltextstream.h
showtickets.o: ../../../winix/core/sessionmanager.h
tdb.o: tdb.h ticket.h ../../../winix/db/dbbase.h ../../../winix/core/error.h
tdb.o: ../../../winix/core/log.h
templates.o: ../../../ezc/src/ezc.h ../../../ezc/src/generator.h
templates.o: ../../../ezc/src/blocks.h ../../../winix/core/item.h
templates.o: ../../../pikotools/space/space.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../pikotools/date/date.h ../../../ezc/src/cache.h
templates.o: ../../../ezc/src/functions.h ../../../pikotools/utf8/utf8.h
templates.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
templates.o: ../../../ezc/src/patternparser.h ticketinfo.h ticket.h
templates.o: ../../../winix/core/item.h ../../../winix/core/system.h
templates.o: ../../../winix/functions/functions.h
templates.o: ../../../winix/functions/functionbase.h ../../../winix/db/db.h
templates.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
templates.o: ../../../winix/db/dbtextstream.h
templates.o: ../../../winix/core/textstream.h
templates.o: ../../../pikotools/textstream/textstream.h
templates.o: ../../../pikotools/convert/convert.h
templates.o: ../../../pikotools/convert/inttostr.h
templates.o: ../../../pikotools/membuffer/membuffer.h
templates.o: ../../../pikotools/textstream/types.h
templates.o: ../../../winix/core/error.h
templates.o: ../../../pikotools/space/spaceparser.h
templates.o: ../../../pikotools/space/space.h ../../../winix/db/dbitemquery.h
templates.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
templates.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
templates.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
templates.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
templates.o: ../../../winix/core/requesttypes.h
templates.o: ../../../winix/core/winix_const.h
templates.o: ../../../winix/core/logmanipulators.h ../../../winix/core/slog.h
templates.o: ../../../winix/core/cur.h ../../../winix/core/request.h
templates.o: ../../../winix/core/error.h ../../../winix/core/config.h
templates.o: ../../../winix/core/htmlfilter.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../pikotools/space/spacetojson.h
templates.o: ../../../winix/core/session.h ../../../winix/core/user.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
templates.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
templates.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
templates.o: ../../../winix/core/config.h ../../../winix/core/synchro.h
templates.o: ../../../winix/notify/notify.h
templates.o: ../../../winix/notify/notifypool.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/locale.h
templates.o: ../../../winix/templates/localefilter.h
templates.o: ../../../winix/notify/notifythread.h
templates.o: ../../../winix/core/basethread.h
templates.o: ../../../winix/notify/templatesnotify.h
templates.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
templates.o: ../../../winix/core/lastcontainer.h
templates.o: ../../../winix/functions/functionparser.h
templates.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
templates.o: ../../../winix/functions/adduser.h
templates.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
templates.o: ../../../winix/functions/privchanger.h
templates.o: ../../../winix/functions/chown.h
templates.o: ../../../winix/functions/ckeditor.h
templates.o: ../../../winix/functions/cp.h ../../../winix/functions/default.h
templates.o: ../../../winix/functions/download.h
templates.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
templates.o: ../../../winix/functions/imgcrop.h
templates.o: ../../../winix/functions/last.h ../../../winix/functions/login.h
templates.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
templates.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
templates.o: ../../../winix/functions/meta.h ../../../winix/functions/mkdir.h
templates.o: ../../../winix/functions/mv.h ../../../winix/functions/nicedit.h
templates.o: ../../../winix/functions/node.h
templates.o: ../../../winix/functions/passwd.h
templates.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
templates.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
templates.o: ../../../winix/functions/rmuser.h ../../../winix/core/run.h
templates.o: ../../../winix/functions/sort.h
templates.o: ../../../winix/functions/specialdefault.h
templates.o: ../../../winix/functions/stat.h
templates.o: ../../../winix/functions/subject.h
templates.o: ../../../winix/functions/template.h
templates.o: ../../../winix/core/timezone.h
templates.o: ../../../winix/functions/tinymce.h
templates.o: ../../../winix/functions/uname.h
templates.o: ../../../winix/functions/upload.h
templates.o: ../../../winix/functions/uptime.h ../../../winix/functions/who.h
templates.o: ../../../winix/functions/vim.h ../../../winix/core/htmlfilter.h
templates.o: tdb.h ../../../winix/db/dbbase.h editticket.h
templates.o: ../../../winix/functions/functionbase.h createticket.h
templates.o: ../../../winix/core/misc.h ../../../winix/core/plugin.h
templates.o: pluginmsg.h ../../../winix/core/system.h
templates.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
templates.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
templates.o: ../../../winix/core/dircontainer.h ../../../winix/core/mounts.h
templates.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
templates.o: ../../../winix/core/users.h ../../../winix/core/groups.h
templates.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
templates.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
templates.o: ../../../winix/core/timezones.h
templates.o: ../../../winix/core/sessionmanager.h
templates.o: ../../../winix/core/sessioncontainer.h
templates.o: ../../../winix/core/ipbancontainer.h
templates.o: ../../../winix/templates/templates.h
templates.o: ../../../winix/templates/patterncacher.h
templates.o: ../../../winix/templates/indexpatterns.h
templates.o: ../../../winix/templates/patterns.h
templates.o: ../../../winix/templates/changepatterns.h
templates.o: ../../../winix/templates/htmltextstream.h
templates.o: ../../../winix/core/sessionmanager.h sessiondata.h
templates.o: ../../../winix/core/plugindata.h ../../../winix/functions/rm.h
templates.o: ../../../winix/plugins/thread/pluginmsg.h
templates.o: ../../../winix/templates/miscspace.h
templates.o: ../../../winix/templates/templates.h
ticketinfo.o: ticketinfo.h ticket.h ../../../winix/core/item.h
ticketinfo.o: ../../../winix/core/system.h
ticketinfo.o: ../../../winix/functions/functions.h
ticketinfo.o: ../../../winix/functions/functionbase.h ../../../winix/db/db.h
ticketinfo.o: ../../../winix/db/dbbase.h ../../../winix/db/dbconn.h
ticketinfo.o: ../../../winix/db/dbtextstream.h
ticketinfo.o: ../../../winix/core/textstream.h
ticketinfo.o: ../../../pikotools/textstream/textstream.h
ticketinfo.o: ../../../pikotools/space/space.h
ticketinfo.o: ../../../pikotools/textstream/types.h
ticketinfo.o: ../../../pikotools/date/date.h
ticketinfo.o: ../../../pikotools/convert/convert.h
ticketinfo.o: ../../../pikotools/convert/inttostr.h
ticketinfo.o: ../../../pikotools/membuffer/membuffer.h
ticketinfo.o: ../../../pikotools/textstream/types.h
ticketinfo.o: ../../../winix/core/error.h
ticketinfo.o: ../../../pikotools/space/spaceparser.h
ticketinfo.o: ../../../pikotools/space/space.h
ticketinfo.o: ../../../winix/db/dbitemquery.h
ticketinfo.o: ../../../winix/db/dbitemcolumns.h ../../../winix/core/user.h
ticketinfo.o: ../../../winix/core/group.h ../../../winix/core/dircontainer.h
ticketinfo.o: ../../../winix/core/ugcontainer.h ../../../winix/core/log.h
ticketinfo.o: ../../../winix/core/textstream.h ../../../winix/core/misc.h
ticketinfo.o: ../../../winix/core/item.h ../../../winix/core/requesttypes.h
ticketinfo.o: ../../../pikotools/utf8/utf8.h
ticketinfo.o: ../../../winix/core/winix_const.h
ticketinfo.o: ../../../winix/core/logmanipulators.h
ticketinfo.o: ../../../winix/core/slog.h ../../../winix/core/cur.h
ticketinfo.o: ../../../winix/core/request.h ../../../winix/core/error.h
ticketinfo.o: ../../../winix/core/config.h ../../../winix/core/htmlfilter.h
ticketinfo.o: ../../../winix/templates/htmltextstream.h
ticketinfo.o: ../../../pikotools/space/spacetojson.h
ticketinfo.o: ../../../winix/core/session.h ../../../winix/core/user.h
ticketinfo.o: ../../../winix/core/plugindata.h ../../../winix/core/rebus.h
ticketinfo.o: ../../../winix/core/ipban.h ../../../winix/core/mount.h
ticketinfo.o: ../../../winix/templates/locale.h ../../../winix/core/request.h
ticketinfo.o: ../../../winix/core/config.h ../../../winix/core/synchro.h
ticketinfo.o: ../../../winix/notify/notify.h
ticketinfo.o: ../../../winix/notify/notifypool.h
ticketinfo.o: ../../../winix/templates/patterns.h
ticketinfo.o: ../../../winix/templates/locale.h
ticketinfo.o: ../../../winix/templates/localefilter.h ../../../ezc/src/ezc.h
ticketinfo.o: ../../../ezc/src/generator.h ../../../ezc/src/blocks.h
ticketinfo.o: ../../../ezc/src/cache.h ../../../ezc/src/functions.h
ticketinfo.o: ../../../ezc/src/funinfo.h ../../../ezc/src/pattern.h
ticketinfo.o: ../../../ezc/src/patternparser.h
ticketinfo.o: ../../../winix/notify/notifythread.h
ticketinfo.o: ../../../winix/core/basethread.h
ticketinfo.o: ../../../winix/notify/templatesnotify.h
ticketinfo.o: ../../../winix/core/users.h ../../../winix/core/ugcontainer.h
ticketinfo.o: ../../../winix/core/lastcontainer.h
ticketinfo.o: ../../../winix/functions/functionparser.h
ticketinfo.o: ../../../winix/core/cur.h ../../../winix/functions/account.h
ticketinfo.o: ../../../winix/functions/adduser.h
ticketinfo.o: ../../../winix/functions/cat.h ../../../winix/functions/chmod.h
ticketinfo.o: ../../../winix/functions/privchanger.h
ticketinfo.o: ../../../winix/functions/chown.h
ticketinfo.o: ../../../winix/functions/ckeditor.h
ticketinfo.o: ../../../winix/functions/cp.h
ticketinfo.o: ../../../winix/functions/default.h
ticketinfo.o: ../../../winix/functions/download.h
ticketinfo.o: ../../../winix/functions/emacs.h ../../../winix/functions/env.h
ticketinfo.o: ../../../winix/functions/imgcrop.h
ticketinfo.o: ../../../winix/functions/last.h
ticketinfo.o: ../../../winix/functions/login.h
ticketinfo.o: ../../../winix/functions/logout.h ../../../winix/functions/ln.h
ticketinfo.o: ../../../winix/functions/ls.h ../../../winix/functions/man.h
ticketinfo.o: ../../../winix/functions/meta.h
ticketinfo.o: ../../../winix/functions/mkdir.h ../../../winix/functions/mv.h
ticketinfo.o: ../../../winix/functions/nicedit.h
ticketinfo.o: ../../../winix/functions/node.h
ticketinfo.o: ../../../winix/functions/passwd.h
ticketinfo.o: ../../../winix/functions/priv.h ../../../winix/functions/pw.h
ticketinfo.o: ../../../winix/functions/reload.h ../../../winix/functions/rm.h
ticketinfo.o: ../../../winix/functions/rmuser.h ../../../winix/core/run.h
ticketinfo.o: ../../../winix/functions/sort.h
ticketinfo.o: ../../../winix/functions/specialdefault.h
ticketinfo.o: ../../../winix/functions/stat.h
ticketinfo.o: ../../../winix/functions/subject.h
ticketinfo.o: ../../../winix/functions/template.h
ticketinfo.o: ../../../winix/core/timezone.h
ticketinfo.o: ../../../winix/functions/tinymce.h
ticketinfo.o: ../../../winix/functions/uname.h
ticketinfo.o: ../../../winix/functions/upload.h
ticketinfo.o: ../../../winix/functions/uptime.h
ticketinfo.o: ../../../winix/functions/who.h ../../../winix/functions/vim.h
ticketinfo.o: ../../../winix/core/htmlfilter.h tdb.h
ticketinfo.o: ../../../winix/db/dbbase.h ../../../winix/core/log.h
ticketinfo.o: ../../../winix/core/misc.h ../../../winix/core/plugin.h
ticketinfo.o: pluginmsg.h ../../../winix/core/system.h
ticketinfo.o: ../../../winix/core/job.h ../../../winix/core/basethread.h
ticketinfo.o: ../../../winix/core/synchro.h ../../../winix/core/dirs.h
ticketinfo.o: ../../../winix/core/dircontainer.h ../../../winix/core/mounts.h
ticketinfo.o: ../../../winix/core/mountparser.h ../../../winix/core/crypt.h
ticketinfo.o: ../../../winix/core/users.h ../../../winix/core/groups.h
ticketinfo.o: ../../../winix/core/group.h ../../../winix/core/loadavg.h
ticketinfo.o: ../../../winix/core/image.h ../../../winix/core/threadmanager.h
ticketinfo.o: ../../../winix/core/timezones.h
ticketinfo.o: ../../../winix/core/sessionmanager.h
ticketinfo.o: ../../../winix/core/sessioncontainer.h
ticketinfo.o: ../../../winix/core/ipbancontainer.h
ticketinfo.o: ../../../winix/templates/templates.h
ticketinfo.o: ../../../winix/templates/patterncacher.h
ticketinfo.o: ../../../winix/templates/indexpatterns.h
ticketinfo.o: ../../../winix/templates/patterns.h
ticketinfo.o: ../../../winix/templates/changepatterns.h
ticketinfo.o: ../../../winix/templates/htmltextstream.h
ticketinfo.o: ../../../winix/core/sessionmanager.h sessiondata.h
ticketinfo.o: ../../../winix/core/plugindata.h ../../../winix/functions/rm.h

View File

@@ -1,19 +0,0 @@
include Makefile.o.dep
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(CXXWINIXINCLUDEFLAGS) $<
depend:
makedepend -Y. $(CXXWINIXINCLUDEFLAGS) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
o = adduser.o changepatterns.o config.o dir.o doc.o env.o filters.o generic.o htmltextstream.o indexpatterns.o insert.o ipban.o item.o last.o locale.o localefilter.o login.o ls.o man.o misc.o miscspace.o mount.o passwd.o patterncacher.o patterns.o priv.o rebus.o slog.o stat.o sys.o template.o templates.o textextstream.o upload.o uptime.o user.o who.o winix.o

View File

@@ -1,405 +0,0 @@
/*
* This file is a part of Winix
* and is distributed under the 2-Clause BSD licence.
* Author: Tomasz Sowa <t.sowa@ttmath.org>
*/
/*
* Copyright (c) 2012-2014, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
#include "templates.h"
namespace Winix
{
namespace TemplatesFunctions
{
bool are_spaces_the_same(const std::vector<Ezc::Var> & params, const std::vector<std::wstring> & spaces)
{
// last value from params is the parameter name (not a space)
if( spaces.size() + 1 != params.size() )
return false;
for(size_t i=0 ; i<spaces.size() ; ++i)
if( spaces[i] != params[i].str )
return false;
return true;
}
void copy_space(const std::vector<Ezc::Var> & params, std::vector<std::wstring> & spaces)
{
if( !params.empty() )
{
spaces.resize(params.size() - 1);
for(size_t i=0 ; i<params.size() - 1 ; ++i)
spaces[i] = params[i].str;
}
else
{
spaces.clear();
}
}
PT::Space * find_space(const std::vector<Ezc::Var> & params, PT::Space & space, size_t level = 0)
{
if( level + 1 < params.size() )
{
for(size_t i=0 ; i<space.spaces.size() ; ++i)
{
if( space.spaces[i]->name == params[level].str )
return find_space(params, *space.spaces[i], level+1);
}
// there is no such a space
return 0;
}
else
{
return &space;
}
}
struct SpaceInfo
{
bool inited;
PT::Space * last_space;
std::vector<std::wstring> spaces;
SpaceInfo()
{
inited = false;
last_space = 0;
}
};
static std::map<PT::Space*, SpaceInfo> spaces_map;
static size_t space_reqid = 0;
void space_init(const std::vector<Ezc::Var> & params, PT::Space & space, SpaceInfo & space_info)
{
if( !space_info.inited || !are_spaces_the_same(params, space_info.spaces) )
{
space_info.inited = true;
copy_space(params, space_info.spaces);
space_info.last_space = find_space(params, space);
}
else
{
// !! temp
//log << log1 << "taking space from the cache" << logend;
}
}
void space_check_reqid()
{
if( space_reqid != cur->request->id )
{
space_reqid = cur->request->id;
spaces_map.clear();
}
}
void space(Info & i, PT::Space & space)
{
space_check_reqid();
if( !i.params.empty() )
{
SpaceInfo & space_info = spaces_map[&space];
space_init(i.params, space, space_info);
if( space_info.last_space )
{
const std::wstring & param = i.params.back().str;
const std::wstring * value = space_info.last_space->GetValue(param);
if( value )
i.out << *value;
// else
// log << log1 << "nie ma takiej wartosci" << logend; // only for testing
// !! IMPROVE ME
}
}
}
void space_value_noescape(Info & i, PT::Space & space)
{
space_check_reqid();
if( !i.params.empty() )
{
SpaceInfo & space_info = spaces_map[&space];
space_init(i.params, space, space_info);
if( space_info.last_space )
{
const std::wstring & param = i.params.back().str;
const std::wstring * value = space_info.last_space->GetValue(param);
if( value )
i.out << R(*value);
}
}
}
/*
stack item for [for] statement
*/
struct SpaceStackItem
{
// names of the spaces
std::vector<std::wstring> spaces;
// table of values
std::vector<std::wstring> values;
// an index to 'values' which is incremented every each [for]
size_t value_index;
SpaceStackItem()
{
value_index = 0;
}
};
/*
each Space has its own SpacesTabInfo struct
*/
struct SpacesTabInfo
{
// a stack for [for] statements
std::vector<SpaceStackItem> stack_tab;
// current item from 'stack_tab'
size_t cur_stack;
SpacesTabInfo()
{
cur_stack = 0;
}
};
static std::map<PT::Space*, SpacesTabInfo> spaces_tab_info_map;
static size_t spaces_tab_reqid = 0;
bool spaces_tab_find_stack_item(std::vector<Ezc::Var> & params, SpacesTabInfo & spaces_tab_info)
{
bool found = false;
spaces_tab_info.cur_stack = spaces_tab_info.stack_tab.size();
for(size_t i=0 ; i<spaces_tab_info.stack_tab.size() ; ++i)
{
if( are_spaces_the_same(params, spaces_tab_info.stack_tab[i].spaces) )
{
spaces_tab_info.cur_stack = i;
found = true;
break;
}
}
return found;
}
void spaces_tab_add_to_stack(std::vector<Ezc::Var> & params, PT::Space & space, SpacesTabInfo & spaces_tab_info)
{
if( !params.empty() )
{
// adding a new item at the end (with the default constructor)
spaces_tab_info.stack_tab.resize(spaces_tab_info.stack_tab.size() + 1);
spaces_tab_info.cur_stack = spaces_tab_info.stack_tab.size() - 1;
SpaceStackItem & stack_item = spaces_tab_info.stack_tab.back();
copy_space(params, stack_item.spaces);
space.ListText(params.back().str, stack_item.values);
stack_item.value_index = 0;
}
}
void spaces_tab_check_reqid()
{
if( spaces_tab_reqid != cur->request->id )
{
spaces_tab_reqid = cur->request->id;
spaces_tab_info_map.clear();
}
}
void spaces_tab_init(std::vector<Ezc::Var> & params, PT::Space & space, SpacesTabInfo & spaces_tab_info)
{
PT::Space * child_space = find_space(params, space);
if( child_space )
{
if( !spaces_tab_find_stack_item(params, spaces_tab_info) )
{
// add a new value to the stack
spaces_tab_add_to_stack(params, *child_space, spaces_tab_info);
}
}
else
{
// there is not such a space
spaces_tab_info.cur_stack = spaces_tab_info.stack_tab.size();
}
}
void spaces_tab(Info & i, PT::Space & space)
{
spaces_tab_check_reqid();
if( !i.params.empty() )
{
SpacesTabInfo & spaces_tab_info = spaces_tab_info_map[&space];
spaces_tab_init(i.params, space, spaces_tab_info);
if( spaces_tab_info.cur_stack < spaces_tab_info.stack_tab.size() )
{
SpaceStackItem & stack_item = spaces_tab_info.stack_tab[spaces_tab_info.cur_stack];
// !! CHECK ME there was a change in EZC lately
// make sure this still is ok
// i.iter is different for each [for] statement (implemented in EZC)
// so we don't have to remember it in our stack
// for each the same space we have only one item in the stack, e.g.
// [for item_meta "space1" "space2" "value"]
// [for item_meta "space1" "space2" "value"]
// [end]
// [end]
// above two [for]s use the same item on our stack
stack_item.value_index = i.iter;
i.res = stack_item.value_index < stack_item.values.size();
}
}
}
void spaces_tab_value_print(HtmlTextStream & out, SpacesTabInfo & spaces_tab_info)
{
if( spaces_tab_info.cur_stack < spaces_tab_info.stack_tab.size() )
{
SpaceStackItem & stack_item = spaces_tab_info.stack_tab[spaces_tab_info.cur_stack];
out << stack_item.values[stack_item.value_index];
}
}
void spaces_tab_value(Info & i, PT::Space & space)
{
spaces_tab_check_reqid();
SpacesTabInfo & spaces_tab_info = spaces_tab_info_map[&space];
if( i.params.empty() )
{
// value from last [for ...] statement
spaces_tab_value_print(i.out, spaces_tab_info);
}
else
{
size_t cur_stack_old = spaces_tab_info.cur_stack;
if( spaces_tab_find_stack_item(i.params, spaces_tab_info) )
spaces_tab_value_print(i.out, spaces_tab_info);
spaces_tab_info.cur_stack = cur_stack_old;
}
}
bool spaces_tab_has_next(SpacesTabInfo & spaces_tab_info)
{
if( spaces_tab_info.cur_stack < spaces_tab_info.stack_tab.size() )
{
SpaceStackItem & val = spaces_tab_info.stack_tab[spaces_tab_info.cur_stack];
return val.value_index + 1 < val.values.size();
}
return false;
}
void spaces_tab_has_next(Info & i, PT::Space & space)
{
spaces_tab_check_reqid();
SpacesTabInfo & spaces_tab_info = spaces_tab_info_map[&space];
if( i.params.empty() )
{
// value from last [for ...] statement
i.res = spaces_tab_has_next(spaces_tab_info);
}
else
{
size_t cur_stack_old = spaces_tab_info.cur_stack;
if( spaces_tab_find_stack_item(i.params, spaces_tab_info) )
i.res = spaces_tab_has_next(spaces_tab_info);
spaces_tab_info.cur_stack = cur_stack_old;
}
}
} // namespace TemplatesFunctions
} // namespace Winix

182
winixd/Makefile Normal file
View File

@@ -0,0 +1,182 @@
# Makefile for GNU make
include Makefile.dep
# https://www.gnu.org/software/make/manual/html_node/Flavors.html#Flavors
GLOBAL_WORKING_DIR := $(shell pwd)/../..
current_path := $(shell pwd)
global_relative_working_dir := $(shell relative_path $(current_path) $(GLOBAL_WORKING_DIR))
ifeq ($(CXX), g++)
CXX = g++6
endif
ifndef CXX
ifeq ($(OSTYPE), FreeBSD)
CXX = clang++
else
CXX = g++6
endif
endif
# CXX = g++-4.8
ifndef CXXFLAGS
CXXFLAGS = -Wall -O0 -g -fPIC -pthread -std=c++17 -I/usr/local/include -I/usr/include/postgresql -DEZC_HAS_SPECIAL_STREAM
endif
ifndef AR
AR = ar
endif
winix_include_paths = -I$(global_relative_working_dir)/winix/winixd -I$(global_relative_working_dir)/ezc/src -I$(global_relative_working_dir)/tito/src -I$(global_relative_working_dir)/morm/src -I$(global_relative_working_dir)/pikotools
ifndef LDFLAGS
LDFLAGS = -L/usr/local/lib
endif
# for make install
winix_install_dir = /usr/local/winix
export CXX
export CXXFLAGS
export LDFLAGS
export GLOBAL_WORKING_DIR
all: winix.so plugins winix
winix.so: $(winix.src.files)
@cd core ; $(MAKE) -e
@cd db ; $(MAKE) -e
@cd functions ; $(MAKE) -e
@cd notify ; $(MAKE) -e
@cd templates ; $(MAKE) -e
@cd $(GLOBAL_WORKING_DIR)/ezc/src ; $(MAKE) -e
@cd $(GLOBAL_WORKING_DIR)/tito/src ; $(MAKE) -e
@cd $(GLOBAL_WORKING_DIR)/pikotools ; $(MAKE) -e
@cd $(GLOBAL_WORKING_DIR)/morm/src ; $(MAKE) -e
$(CXX) -shared -rdynamic -Wl,-whole-archive -o winix.so $(CXXFLAGS) $(winix_include_paths) core/*.o db/*.o functions/*.o templates/*.o notify/*.o $(GLOBAL_WORKING_DIR)/ezc/src/ezc.a $(GLOBAL_WORKING_DIR)/tito/src/tito.a $(GLOBAL_WORKING_DIR)/pikotools/convert/convert.a $(GLOBAL_WORKING_DIR)/pikotools/utf8/utf8.a $(GLOBAL_WORKING_DIR)/pikotools/space/space.a $(GLOBAL_WORKING_DIR)/pikotools/mainparser/mainparser.a $(GLOBAL_WORKING_DIR)/pikotools/date/date.a $(GLOBAL_WORKING_DIR)/pikotools/log/log.a $(GLOBAL_WORKING_DIR)/morm/src/morm.a $(LDFLAGS) -lfcgi -lpq -lz -lpthread -lcurl -Wl,-no-whole-archive
winix: winix.so $(winix.src.files)
@cd main ; $(MAKE) -e
$(CXX) -o winix $(CXXFLAGS) $(LDFLAGS) main/*.o winix.so -lfcgi
plugins: FORCE
@cd plugins/stats ; $(MAKE) -e
@cd plugins/thread ; $(MAKE) -e
@cd plugins/ticket ; $(MAKE) -e
@cd plugins/gallery ; $(MAKE) -e
@cd plugins/group ; $(MAKE) -e
@cd plugins/menu ; $(MAKE) -e
@cd plugins/export ; $(MAKE) -e
@cd plugins/mailregister ; $(MAKE) -e
@cd plugins/seo ; $(MAKE) -e
FORCE:
clean:
@cd core ; $(MAKE) -e clean
@cd db ; $(MAKE) -e clean
@cd functions ; $(MAKE) -e clean
@cd templates ; $(MAKE) -e clean
@cd notify ; $(MAKE) -e clean
@cd plugins/stats ; $(MAKE) -e clean
@cd plugins/thread ; $(MAKE) -e clean
@cd plugins/ticket ; $(MAKE) -e clean
@cd plugins/gallery ; $(MAKE) -e clean
@cd plugins/group ; $(MAKE) -e clean
@cd plugins/menu ; $(MAKE) -e clean
@cd plugins/export ; $(MAKE) -e clean
@cd plugins/mailregister ; $(MAKE) -e clean
@cd plugins/seo ; $(MAKE) -e clean
@cd $(GLOBAL_WORKING_DIR)/ezc/src ; $(MAKE) -e clean
@cd $(GLOBAL_WORKING_DIR)/tito/src ; $(MAKE) -e clean
@cd $(GLOBAL_WORKING_DIR)/pikotools ; $(MAKE) -e clean
@cd $(GLOBAL_WORKING_DIR)/morm/src ; $(MAKE) -e clean
@cd main ; $(MAKE) -e clean
rm -f winix.so
rm -f winix
depend:
@cd core ; $(MAKE) -e depend
@cd db ; $(MAKE) -e depend
@cd functions ; $(MAKE) -e depend
@cd templates ; $(MAKE) -e depend
@cd notify ; $(MAKE) -e depend
@cd plugins/stats ; $(MAKE) -e depend
@cd plugins/thread ; $(MAKE) -e depend
@cd plugins/ticket ; $(MAKE) -e depend
@cd plugins/gallery ; $(MAKE) -e depend
@cd plugins/group ; $(MAKE) -e depend
@cd plugins/menu ; $(MAKE) -e depend
@cd plugins/export ; $(MAKE) -e depend
@cd plugins/mailregister ; $(MAKE) -e depend
@cd plugins/seo ; $(MAKE) -e depend
@cd $(GLOBAL_WORKING_DIR)/ezc/src ; $(MAKE) -e depend
@cd $(GLOBAL_WORKING_DIR)/tito/src ; $(MAKE) -e depend
@cd $(GLOBAL_WORKING_DIR)/pikotools ; $(MAKE) -e depend
@cd main ; $(MAKE) -e depend
echo -n "winix.src.files = " > Makefile.dep
find -E . -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
# use $(global_relative_working_dir) here to put relative paths to Makefile.dep
find -E $(global_relative_working_dir)/ezc/src -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
find -E $(global_relative_working_dir)/tito/src -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
find -E $(global_relative_working_dir)/pikotools -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
find -E $(global_relative_working_dir)/morm/src -type f -regex ".*\.h|.*\.cpp" | xargs -I foo echo -n foo " " >> Makefile.dep
install: all
# installing binaries
rm -Rf $(winix_install_dir)/bin
mkdir -p $(winix_install_dir)/bin
cp winix $(winix_install_dir)/bin
cp winix.so $(winix_install_dir)/bin
# etc configs
rm -Rf $(winix_install_dir)/etc
mkdir -p $(winix_install_dir)/etc
cp -rf etc/* $(winix_install_dir)/etc/
# html templates
rm -Rf $(winix_install_dir)/html
mkdir -p $(winix_install_dir)/html
cp -rf html/* $(winix_install_dir)/html/
# txt templates
rm -Rf $(winix_install_dir)/txt
mkdir -p $(winix_install_dir)/txt
cp -rf txt/* $(winix_install_dir)/txt/
# locales
rm -Rf $(winix_install_dir)/locale
mkdir -p $(winix_install_dir)/locale
cp -rf locale/* $(winix_install_dir)/locale/
# plugins
rm -Rf $(winix_install_dir)/plugins
mkdir -p $(winix_install_dir)/plugins
find plugins/ -name "*.so" | xargs -I foo cp foo $(winix_install_dir)/plugins/
# deleting subversion directories
find $(winix_install_dir) -type d -name ".svn" | xargs -I foo rm -fr foo
# removing privileges for others
find $(winix_install_dir) -exec chmod o-r,o-x,o-w "{}" "+"

1
winixd/Makefile.dep Normal file

File diff suppressed because one or more lines are too long

24
winixd/core/Makefile Normal file
View File

@@ -0,0 +1,24 @@
include Makefile.o.dep
current_path := $(shell pwd)
global_relative_working_dir := $(shell relative_path $(current_path) $(GLOBAL_WORKING_DIR))
winix_include_paths = -I$(global_relative_working_dir)/winix/winixd -I$(global_relative_working_dir)/ezc/src -I$(global_relative_working_dir)/tito/src -I$(global_relative_working_dir)/morm/src -I$(global_relative_working_dir)/pikotools
all: $(o)
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) $(winix_include_paths) $<
depend:
makedepend -Y. $(winix_include_paths) -f- *.cpp > Makefile.dep
echo -n "o = " > Makefile.o.dep
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
clean:
rm -f *.o
include Makefile.dep

1593
winixd/core/Makefile.dep Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
o = acceptbaseparser.o app.o basethread.o bbcodeparser.o compress.o config.o crypt.o dircontainer.o dirs.o filelog.o groups.o htmlfilter.o httpsimpleparser.o image.o ipbancontainer.o item.o job.o lastcontainer.o loadavg.o lock.o log.o misc.o mount.o mountparser.o mounts.o plugin.o plugindata.o postmultiparser.o rebus.o request.o run.o session.o sessioncontainer.o sessionidmanager.o sessionmanager.o sessionparser.o slog.o synchro.o system.o threadmanager.o timezone.o timezones.o user.o users.o winixbase.o winixmodel.o winixrequest.o winixsystem.o

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -36,6 +36,7 @@
#define headerfile_winix_core_acceptbaseparser
#include <string>
#include "winixbase.h"
namespace Winix
@@ -46,7 +47,7 @@ namespace Winix
// sample (you must create your own class derived from this one):
// object.Parse(L" text/html ; , ; q = 45, application / xhtml+xml ; q = 0.4 , application/xml ; q = 0.9 , */* ; q = 0.8 ");
class AcceptBaseParser
class AcceptBaseParser : public WinixBase
{
public:

File diff suppressed because it is too large Load Diff

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2010-2014, Tomasz Sowa
* Copyright (c) 2010-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -45,11 +45,6 @@
#include <errno.h>
#include <fcgiapp.h>
#include "config.h"
#include "system.h"
#include "mounts.h"
#include "request.h"
#include "synchro.h"
#include "sessionmanager.h"
#include "db/db.h"
#include "functions/functions.h"
@@ -59,7 +54,11 @@
#include "cookieparser.h"
#include "postmultiparser.h"
#include "acceptencodingparser.h"
#include "space/jsontospaceparser.h"
#include "winixrequest.h"
#include "log/log.h"
#include "filelog.h"
namespace Winix
@@ -76,6 +75,9 @@ public:
bool InitFCGI();
bool DropPrivileges();
void InitLoggers();
Log & GetMainLog();
void InitPlugins();
bool Init();
void Start();
void Close();
@@ -101,7 +103,7 @@ public:
// users sessions
SessionManager session_manager;
// database
// database (DEPRACATED)
Db db;
DbConn db_conn;
@@ -129,6 +131,8 @@ public:
Templates templates;
private:
enum Header
@@ -140,6 +144,9 @@ private:
PostParser post_parser;
PostMultiParser post_multi_parser;
PT::JSONToSpaceParser post_json_parser;
std::string post_buffer;
CookieParser cookie_parser;
AcceptEncodingParser accept_encoding_parser;
Compress compress;
@@ -147,7 +154,7 @@ private:
int fcgi_socket;
Synchro synchro;
pthread_t signal_thread;
std::string url_to_fetch_on_exit;
std::string socket_to_send_on_exit;
std::string send_data_buf;
PT::SpaceToJSON json_generic_serializer;
TextStream<std::wstring> json_out_stream;
@@ -155,6 +162,33 @@ private:
std::wstring html_filtered;
std::string output_8bit;
BinaryPage compressed_output;
std::wstring cookie_id_string;
std::wstring http_header;
std::string http_header_8bit;
morm::ModelConnector model_connector; // main thread model connector, each thread has its own connector
morm::JSONConnector json_connector;
morm::PostgreSQLConnector postgresql_connector;
// objects for main thread
WinixBase winix_base;
WinixModel winix_model;
WinixSystem winix_system;
WinixRequest winix_request;
// ///////////////////////
Plugin plugin;
//////////////////////////
// log_buffer for the main thread
PT::WTextStream log_buffer;
// logger only for App object
Log log;
// file logger, one object for every Log objects
FileLog file_log;
bool InitFCGI(char * sock, char * sock_user, char * sock_group);
bool InitFCGIChmodChownSocket(char * sock, char * sock_user, char * sock_group);
@@ -181,10 +215,14 @@ private:
void SendAnswer();
void LogEnvironmentVariables();
void LogEnvironmentHTTPVariables();
void SetEnv(const char * name, std::wstring & env);
void ReadEnvVariables();
void ReadEnvHTTPVariables();
bool SaveEnvHTTPVariable(const char * env);
void ReadEnvRemoteIP();
void ReadPostJson();
void ReadPostVars();
void CheckIE();
@@ -212,6 +250,7 @@ private:
void PrepareHeadersCompression(int compress_encoding);
void PrepareHeadersNormal(Header header, size_t output_size);
void PrepareHeaders(bool compressing, int compress_encoding, Header header, size_t output_size);
void PrepareStandardJSONFields();
int SelectDeflateVersion();
void SelectCompression(size_t source_len, bool & compression_allowed, int & compression_encoding);
bool CanSendContent();
@@ -224,8 +263,7 @@ private:
void LogGroups();
static void * SpecialThreadForSignals(void*);
static size_t FetchPageOnExitCurlCallback(char *ptr, size_t size, size_t nmemb, void *userdata);
void FetchPageOnExit();
void SendEmptyFastCGIPacket();
void CreateStaticTree();

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2010-2014, Tomasz Sowa
* Copyright (c) 2010-2019, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -49,13 +49,22 @@ BaseThread::BaseThread() : thread_signal(PTHREAD_COND_INITIALIZER)
}
void BaseThread::SetSynchro(Synchro * psynchro)
BaseThread::~BaseThread()
{
synchro = psynchro;
}
void BaseThread::set_main_log_buffer(PT::WTextStream * log_buffer)
{
main_log.SetLogBuffer(log_buffer);
}
void BaseThread::set_main_file_log(PT::FileLog * file_log)
{
main_log.SetFileLog(file_log);
}
void BaseThread::Mode(int mode)
{

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2010-2014, Tomasz Sowa
* Copyright (c) 2010-2019, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -37,6 +37,8 @@
#include <pthread.h>
#include "synchro.h"
#include "winixmodel.h"
namespace Winix
@@ -45,14 +47,16 @@ namespace Winix
class BaseThread
class BaseThread : public WinixModel
{
public:
BaseThread();
virtual ~BaseThread();
void set_main_log_buffer(PT::WTextStream * log_buffer);
void set_main_file_log(PT::FileLog * file_log);
// synchro object (must be set)
void SetSynchro(Synchro * psynchro);
// work mode
// we have two modes:
@@ -97,6 +101,13 @@ public:
pthread_t ThreadId();
protected:
// logger for the main thread
Log main_log;
// log from WinixBase is meant to be used by the other thread
protected:
@@ -123,7 +134,6 @@ protected:
protected:
Synchro * synchro;
pthread_t thread_id; // thread id - set by StartThread()
pthread_cond_t thread_signal;
int work_mode;

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -66,36 +66,46 @@ return false;
}
bool BBCODEParser::IsOpeningTagMark()
bool BBCODEParser::IsOpeningTagMark(wchar_t c)
{
return (*pchar == '[');
return (c == '[');
}
// there are no commentaries in bbcode
bool BBCODEParser::IsOpeningCommentaryTagMark()
bool BBCODEParser::IsClosingTagMark(wchar_t c)
{
return (c == ']');
}
bool BBCODEParser::IsClosingXmlSimpleTagMark(wchar_t c)
{
return false;
}
// there are no commentaries in bbcode
bool BBCODEParser::IsOpeningCommentaryTagMark(const wchar_t *)
{
return false;
}
size_t BBCODEParser::OpeningCommentaryTagMarkSize()
{
return 0;
}
bool BBCODEParser::SkipCommentaryTagIfExists()
{
return false;
}
bool BBCODEParser::IsClosingTagMark()
{
return (*pchar == ']');
}
bool BBCODEParser::IsClosingXmlSimpleTagMark()
{
return false;
}
@@ -446,7 +456,7 @@ bool first_tag_removed = false;
while( *pchar != 0 )
{
if( IsOpeningTagMark() )
if( IsOpeningTagMark(*pchar) )
{
if( IsClosingTagForLastItem() )
{

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -62,10 +62,12 @@ class BBCODEParser : public HTMLFilter
virtual void Init();
virtual void Uninit();
virtual bool IsOpeningTagMark();
virtual bool IsOpeningCommentaryTagMark();
virtual bool IsClosingTagMark();
virtual bool IsClosingXmlSimpleTagMark();
virtual bool IsOpeningTagMark(wchar_t c);
virtual bool IsClosingTagMark(wchar_t c);
virtual bool IsClosingXmlSimpleTagMark(wchar_t c);
virtual bool IsOpeningCommentaryTagMark(const wchar_t *);
virtual size_t OpeningCommentaryTagMarkSize();
virtual bool IsValidCharForName(int c);
virtual void CheckExceptions();

View File

@@ -38,6 +38,7 @@
#include <cstring>
#include <zlib.h>
#include "requesttypes.h"
#include "winixbase.h"
namespace Winix
@@ -45,7 +46,7 @@ namespace Winix
class Compress
class Compress : public WinixBase
{
public:

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -34,7 +34,6 @@
#include "config.h"
#include "log.h"
#include "plugin.h"
#include "misc.h"
#include "crypt.h"
@@ -50,9 +49,16 @@ Config::Config()
}
void Config::SetFileLog(FileLog * file_log)
{
log.SetFileLog(file_log);
}
//!! czy tu w ogole mozemy uzywac log << ?
//!! przeciez jeszcze nie zostal przetworzony plik konfiguracyjny
void Config::SetLogBuffer(PT::WTextStream * log_buffer)
{
log.SetLogBuffer(log_buffer);
}
void Config::ShowError()
@@ -101,9 +107,7 @@ bool Config::ReadConfig(bool errors_to_stdout_, bool stdout_is_closed)
log << log2 << "Config: reading a config file" << logend;
parser.SplitSingle(true);
parser.SetSpace(space);
PT::SpaceParser::Status status = parser.Parse(config_file);
if( status == PT::SpaceParser::ok )
@@ -124,6 +128,7 @@ bool Config::ReadConfig(bool errors_to_stdout_, bool stdout_is_closed)
void Config::AssignValues(bool stdout_is_closed)
{
server_mode = Text(L"server_mode");
demonize = Bool(L"demonize", true);
user = Text(L"user");
@@ -131,7 +136,6 @@ void Config::AssignValues(bool stdout_is_closed)
additional_groups = Bool(L"additional_groups", true);
log_file = Text(L"log_file");
log_notify_file = Text(L"log_notify_file");
log_delimiter = Text(L"log_delimiter", L"---------------------------------------------------------------------------------");
fcgi_socket = Text(L"fcgi_socket");
fcgi_socket_chmod = Int(L"fcgi_socket_chmod", 0770);
@@ -148,6 +152,7 @@ void Config::AssignValues(bool stdout_is_closed)
log_plugin_call = Bool(L"log_plugin_call", false);
log_post_value_size = Size(L"log_post_value_size", 80);
log_env_variables = Bool(L"log_env_variables", false);
log_env_http_variables = Bool(L"log_env_http_variables", false);
log_http_answer_headers = Bool(L"log_http_answer_headers", false);
post_file_max = Size(L"post_file_max", 8388608); // 8 MB
@@ -181,12 +186,15 @@ void Config::AssignValues(bool stdout_is_closed)
templates_fun_prefix = Text(L"templates_fun_prefix", L"fun_");
templates_fun_postfix = Text(L"templates_fun_postfix", L".html");
templates_index = Text(L"templates_index", L"index.html");
templates_index_raw = Text(L"templates_index_raw", L"index_raw.html");
template_only_root_use_template_fun = Bool(L"template_only_root_use_template_fun", false);
http_session_id_name = Text(L"http_session_id_name", L"session_id");
db_database = Text(L"db_database");
db_user = Text(L"db_user");
db_pass = Text(L"db_pass");
db_postgresql_smaller_than_10 = Bool(L"db_postgresql_smaller_than_10", false);
item_url_empty = Text(L"item_url_empty");
url_proto = Text(L"url_proto", L"http://");
@@ -195,8 +203,9 @@ void Config::AssignValues(bool stdout_is_closed)
use_ssl = Bool(L"use_ssl", false);
use_ssl_static = Bool(L"use_ssl_static", false);
use_ssl_common = Bool(L"use_ssl_common", false);
use_ssl_only_for_logged_users = Bool(L"use_ssl_only_for_logged_users", true);
use_ssl_only_for_logged_users = Bool(L"use_ssl_only_for_logged_users", false);
use_ssl_redirect_code = Int(L"use_ssl_redirect_code", 303);
assume_connection_is_through_ssl = Bool(L"assume_connection_is_through_ssl", false);
base_url = Text(L"base_url");
base_url_static = Text(L"base_url_static");
@@ -216,6 +225,15 @@ void Config::AssignValues(bool stdout_is_closed)
session_remember_max_idle = Int(L"session_remember_max_idle", 16070400); // 3 months
session_file = Text(L"session_file");
session_max = Size(L"session_max", 1000000);
session_cookie_encode = Bool(L"session_cookie_encode", false);
session_keys_file = Text(L"session_keys_file");
session_allow_index_difference = Size(L"session_allow_index_difference", 8);
session_index_time_increment = Long(L"session_index_time_increment", 30);
session_key_renew_time = Size(L"session_key_renew_time", 172800); // 2 days
broken_encoded_cookie_treshold = Size(L"broken_encoded_cookie_treshold", 2);
session_hijacking_treshold = Size(L"session_hijacking_treshold", 128);
no_session_cookie_treshold = Size(L"no_session_cookie_treshold", 128);
no_session_cookie_ban_mode = Int(L"no_session_cookie_ban_mode", 0);
compression = Bool(L"compression", true);
compression_page_min_size = Size(L"compression_page_min_size", 512);
@@ -268,7 +286,7 @@ void Config::AssignValues(bool stdout_is_closed)
ezc_max_elements = Size(L"ezc_max_elements", 50000);
ezc_max_loop_elements = Size(L"ezc_max_loop_elements", 5000);
ezc_out_streams_size = Size(L"ezc_out_streams_size", 16);
ezc_out_streams_size = Size(L"ezc_out_streams_size", 128);
ezc_error_prefix = Text(L"ezc_error_prefix", L"<!-- ");
ezc_error_postfix = Text(L"ezc_error_postfix", L" -->");
@@ -295,6 +313,12 @@ void Config::AssignValues(bool stdout_is_closed)
incorrect_login_cannot_login_delay = Size(L"incorrect_login_cannot_login_delay", 1800);
pid_file = Text(L"pid_file", L"");
allow_ezc_out_in_executable_items = Bool(L"allow_ezc_out_in_executable_items", false);
check_proxy_ip_header = Bool(L"check_proxy_ip_header", false);
proxy_ip_header = Text(L"proxy_ip_header", L"X_Real_IP");
antispam_list_max_size = Size(L"antispam_list_max_size", 10);
}
@@ -303,11 +327,6 @@ void Config::AssignValues(bool stdout_is_closed)
void Config::SetAdditionalVariables()
{
if( html_filter_orphans_mode_str == L"160" )
html_filter_orphans_mode = HTMLFilter::orphan_160space;
else
html_filter_orphans_mode = HTMLFilter::orphan_nbsp;
for(size_t i=0 ; i<static_dirs.size() ; ++i)
NoLastSlash(static_dirs[i]);
@@ -322,7 +341,16 @@ void Config::SetAdditionalVariables()
if( locale_files.empty() )
locale_files.push_back(L"en");
upload_group_int = GetGroupId(upload_group);
if( !upload_group.empty() )
upload_group_int = GetGroupId(upload_group);
else
upload_group_int = -1;
if( session_cookie_encode && session_keys_file.empty() )
session_cookie_encode = false;
if( session_index_time_increment < 0 )
session_index_time_increment = 0;
}
@@ -351,24 +379,42 @@ void Config::CheckPasswd()
std::wstring & Config::Text(const wchar_t * name)
std::wstring Config::Text(const wchar_t * name)
{
return space.Text(name);
}
std::wstring & Config::Text(const wchar_t * name, const wchar_t * def)
std::wstring Config::Text(const wchar_t * name, const wchar_t * def)
{
return space.Text(name, def);
}
std::wstring & Config::Text(const std::wstring & name, const wchar_t * def)
std::wstring Config::Text(const std::wstring & name, const wchar_t * def)
{
return space.Text(name, def);
}
std::wstring & Config::TextRef(const wchar_t * name)
{
return space.TextRef(name);
}
std::wstring & Config::TextRef(const wchar_t * name, const wchar_t * def)
{
return space.TextRef(name, def);
}
std::wstring & Config::TextRef(const std::wstring & name, const wchar_t * def)
{
return space.TextRef(name, def);
}
int Config::Int(const wchar_t * name)
{
return space.Int(name);

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -37,7 +37,9 @@
#include <string>
#include "space/spaceparser.h"
#include "htmlfilter.h"
#include "log.h"
#include "filelog.h"
namespace Winix
@@ -55,6 +57,13 @@ public:
// this is the parameter passed to winix programm
std::wstring config_file;
// server mode
// you can assign any string to it such as "production" "dev"
// this value is not used by winix itself
// you can refer to it from [server_mode] and [server_mode_is] ezc functions
std::wstring server_mode;
// start as a demon (in the background)
// default: true
bool demonize;
@@ -73,8 +82,8 @@ public:
// default: true
bool additional_groups;
// log file name, log file name for notifications (sending emails, etc)
std::wstring log_file, log_notify_file;
// log file name
std::wstring log_file;
// the log level (how much info should be inserted to logs)
// 1 - minimum
@@ -115,6 +124,7 @@ public:
// default: false
bool log_plugin_call;
// how many characters in values should be logged from POST parameters
// default: 80
// set to 0 to turn it off
@@ -126,6 +136,9 @@ public:
// log environment variables (fastcgi environment)
bool log_env_variables;
// log environment http variables (only HTTP_* variables from fastcgi environment)
bool log_env_http_variables;
// log headers (+cookies) which are returned to the client
// this is what winix has generated -- the web server can change or add other headers
// default: false
@@ -168,6 +181,10 @@ public:
// default: index.html
std::wstring templates_index;
// html template used to send raw content
// default: index_raw.html
std::wstring templates_index_raw;
// if true then only root can use 'template' winix function
// default: false
bool template_only_root_use_template_fun;
@@ -177,6 +194,11 @@ public:
std::wstring db_user;
std::wstring db_pass;
// is the PostgreSQL later than 10
// default false
// if true then we are not using ROW() statements in sql query
bool db_postgresql_smaller_than_10;
// the name of the cookie which has the session identifier
std::wstring http_session_id_name;
@@ -203,6 +225,59 @@ public:
// default: 1000000 (one milion)
size_t session_max;
// whether or not we should encode the session cookie
// (we have a special algorithm)
// default: false
bool session_cookie_encode;
// if session_cookie_encode is true then you should provide
// a file where AES keys will be stored
std::wstring session_keys_file;
// each session has an index -- an unsigned int value
// this value is sent in the cookie string (is encoded)
// and is incremented when session_index_time_increment time is passed since the last incrementing
// if a client sent the cookie back the difference between
// current index and the index in the cookie should be less than or equal to session_allow_index_difference
// default: 8
size_t session_allow_index_difference;
// the time which should pass after the session index is incremented
// default: 30
// (session_allow_index_difference + 1) * session_index_time_increment should be less than a time
// load of a page and all elements on it such as images (of course it depends on client's download too)
time_t session_index_time_increment;
// time in seconds after a new AES key pair should be generated
// we have 256 pairs of keys so this time multiplied by 256 should not be less than
// the max time of a session (session_remember_max_idle),
// by default: 256 * 2 days = 512 days = 1.4 year > 3 months (session_remember_max_idle)
// default: 172800 = 2 days (max: 2678400 = 1 month, min: 10)
size_t session_key_renew_time;
// after how many broken encoded cookie we should ban the current IP
// default: 2 (value in the range <0 - 65535>)
size_t broken_encoded_cookie_treshold;
// after how many incorrect session identifiers (or session indices) we should ban the current IP
// do not set this value too low, as people connecting from the same IP address (from behind a NAT)
// would be banned if they have an old session cookie remembered in the browser
// default: 128 (value in the range <0 - 65535>)
size_t session_hijacking_treshold;
// after how many times a client will be banned (or given temporary session) if it did not send a session cookie
// this can be a bot such as a Google Bot or just people connecting from a NAT and all have the same IP
// default: 128 (value in the range <0 - 65535>)
size_t no_session_cookie_treshold;
// the way we behave when no_session_cookie_treshold limit is exceeded
// 0 - if a client doesn't send a session cookie again then use a temporary session
// (other sessions from this IP address are not affected)
// 1 - add this IP address to ban list and create a temporary session
// (this will block other sessions from this IP address too)
// default: 0
int no_session_cookie_ban_mode;
// allow the winix output to be compressed
// default: true
bool compression;
@@ -255,7 +330,6 @@ public:
// either: "nbsp" or "160"
// default: "nbsp"
std::wstring html_filter_orphans_mode_str;
HTMLFilter::OrphanMode html_filter_orphans_mode;
// the html nofilter tag
// content betweeng these tags (opening and closing) will not be filtered
@@ -420,7 +494,7 @@ public:
// if SSL is enabled then if this is true the SSL will be used
// only for logged users
// default: true
// default: false
bool use_ssl_only_for_logged_users;
// if current connection is without SSL and should be made through SSL
@@ -429,6 +503,14 @@ public:
// default: 303
int use_ssl_redirect_code;
// winix is testing an environment variable "HTTPS" for the value "on"
// to think that the connection is made via SSL
// you can set assume_connection_is_through_ssl to true for the winix
// to not testing any environment variables but just think the connection
// was made by https (useful when using proxy)
// default: false
bool assume_connection_is_through_ssl;
// when the HOST_HTTP environment variable is not equal to 'base_url'
// (the part 'http://' and the last slash is removed)
// the server will redirect into base_url + 'REQUEST_URI'
@@ -549,7 +631,9 @@ public:
size_t ezc_max_loop_elements;
// how many output streams do we have in Request class
// default: 16 (64 maximum)
// those streams used in ajax responses
// you can use no more [ezc out] statements than this limit
// default: 128
size_t ezc_out_streams_size;
// prefix and postfix used when there is an error in Ezc patterns
@@ -642,7 +726,7 @@ public:
// how many incorrect logins there must have been passed to display a captcha
// next to the login form
// default: 3
// default: 3 (value in the range <0 - 65535>)
size_t incorrect_login_captcha_treshold;
// the way how we prevent to login if there are too many incorrect login attempts
@@ -653,7 +737,7 @@ public:
int incorrect_login_cannot_login_mode;
// after how many incorrect login attempts we do the incorrect_login_cannot_login_mode action
// default: 20
// default: 20 (value in the range <0 - 65535>)
size_t incorrect_login_cannot_login_treshold;
// used when incorrect_login_cannot_login_mode is zero
@@ -668,14 +752,46 @@ public:
// pid file is saved after winix has dropped privileges
std::wstring pid_file;
// allow to use [ezc out] statement in executable items (used in 'run' winix function)
// default false
// warning: if you enable this options a user can override a different output stream when using ajax
bool allow_ezc_out_in_executable_items;
// check whether there is a 'log_proxy_ip_header' header
// and if so then log the IP address from it
// default: false
bool check_proxy_ip_header;
// proxy header representing the real IP address of a client
// default: X_Real_IP
std::wstring proxy_ip_header;
// antispam mechanizm
// size of an list for map: form_id to counter_id for anonymous users (each session has such an map)
// this value allowes you to open the same or different html form in the browser more than once
// and each form has its own form_id and counter_id
// default: 10 (max ten forms can be open in different tabs)
size_t antispam_list_max_size;
Config();
bool ReadConfig(bool errors_to_stdout_, bool stdout_is_closed = true);
std::wstring & Text(const wchar_t * name);
std::wstring & Text(const wchar_t * name, const wchar_t * def);
std::wstring & Text(const std::wstring & name, const wchar_t * def);
/*
*
* CHECK ME
* there was a change in Pikotools
* before Text() returns a reference to the std::wstring
*
*/
std::wstring Text(const wchar_t * name);
std::wstring Text(const wchar_t * name, const wchar_t * def);
std::wstring Text(const std::wstring & name, const wchar_t * def);
std::wstring & TextRef(const wchar_t * name);
std::wstring & TextRef(const wchar_t * name, const wchar_t * def);
std::wstring & TextRef(const std::wstring & name, const wchar_t * def);
int Int(const wchar_t *);
int Int(const wchar_t * name, int def);
@@ -704,10 +820,15 @@ public:
PT::Space space;
void SetFileLog(FileLog * file_log);
void SetLogBuffer(PT::WTextStream * log_buffer);
private:
PT::SpaceParser parser;
bool errors_to_stdout;
Log log;
void ShowError();
void AssignValues(bool stdout_is_closed);

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2011-2014, Tomasz Sowa
* Copyright (c) 2011-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -36,6 +36,7 @@
#include "crypt.h"
#include "utf8/utf8.h"
#include "log.h"
#include "misc.h"
@@ -44,12 +45,18 @@ namespace Winix
void Crypt::SetConfig(Config * pconfig)
{
config = pconfig;
}
//void Crypt::SetConfig(Config * pconfig)
//{
// config = pconfig;
//}
void Crypt::set_dependency(WinixBase * winix_base)
{
WinixBase::set_dependency(winix_base);
run.set_dependency(winix_base);
}
char Crypt::ConvertToHexForm(int val)
{
@@ -70,6 +77,7 @@ bool Crypt::HashBin(int hash, const char * in, size_t inlen, std::string & out)
return false;
run.Clear();
run.set_dependency(this);
PT::WideToUTF8(config->opensll_path, command);
run.Cmd(command);
run.Par("dgst");

View File

@@ -39,6 +39,8 @@
#include "run.h"
#include "config.h"
#include "user.h"
#include "winixbase.h"
namespace Winix
@@ -63,12 +65,15 @@ namespace Winix
/*
calculating hashes, encrypting and decrypting with RSA
*/
class Crypt
class Crypt : public WinixBase
{
public:
void SetConfig(Config * pconfig);
void set_dependency(WinixBase * winix_base);
//void SetConfig(Config * pconfig);
/*
@@ -240,7 +245,7 @@ public:
private:
Config * config;
//Config * config;
Run run;
std::string command, bufina, keypatha;
//std::wstring pass_salted;//, pass_hashed;

View File

@@ -38,6 +38,7 @@
#include <list>
#include <map>
#include "item.h"
#include "winixbase.h"
namespace Winix
@@ -45,7 +46,7 @@ namespace Winix
class DirContainer
class DirContainer : public WinixBase
{
public:

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -34,7 +34,7 @@
#include "dirs.h"
#include "error.h"
#include "log.h"
#include "notify/notify.h"
namespace Winix
@@ -60,6 +60,13 @@ void Dirs::SetNotify(Notify * pnotify)
}
void Dirs::set_dependency(WinixModel * winix_model)
{
WinixModel::set_dependency(winix_model);
dir_tab.set_dependency(winix_model);
}
void Dirs::Clear()
{
dir_tab.Clear();

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -44,19 +44,21 @@
#include "dircontainer.h"
#include "db/db.h"
#include "request.h"
#include "notify/notify.h"
#include "winixmodel.h"
namespace Winix
{
class Notify;
// !! IMPROVE ME
// we do not support '..' in a path (for simplicity and security reasons)
// (we will support '..' in the future)
class Dirs
class Dirs : public WinixModel
{
public:
@@ -67,6 +69,8 @@ public:
void SetDb(Db * pdb);
void SetNotify(Notify * pnotify);
void set_dependency(WinixModel * winix_model);
// these methods return false if there is no such a dir
bool IsDir(long dir_id);
bool GetDirChilds(long parent_id, std::vector<Item*> & childs_tab); // !! zamienic na GetChilds()

135
winixd/core/filelog.cpp Normal file
View File

@@ -0,0 +1,135 @@
/*
* This file is a part of Winix
* and is distributed under the 2-Clause BSD licence.
* Author: Tomasz Sowa <t.sowa@ttmath.org>
*/
/*
* Copyright (c) 2018-2019, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
#include "filelog.h"
#include <ctime>
#include <string.h>
#include "utf8/utf8.h"
#include "timezones.h"
namespace Winix
{
FileLog::FileLog()
{
time_zones = nullptr;
synchro = nullptr;
log_time_zone_id = 0;
}
FileLog::~FileLog()
{
}
void FileLog::set_synchro(Synchro * synchro)
{
this->synchro = synchro;
}
void FileLog::init(const std::wstring & log_file, bool log_stdout, int log_level, bool save_each_line, size_t log_time_zone_id)
{
PT::FileLog::init(log_file, log_stdout, log_level, save_each_line);
this->log_time_zone_id = log_time_zone_id;
}
void FileLog::set_time_zones(TimeZones * time_zones)
{
this->time_zones = time_zones;
}
int FileLog::get_log_level()
{
return log_level;
}
bool FileLog::should_save_each_line()
{
return save_each_line;
}
PT::Date FileLog::get_local_date(const PT::Date & date)
{
if( time_zones )
{
Lock lock(synchro);
TimeZone * tz = time_zones->GetZone(log_time_zone_id);
if( tz )
{
PT::Date local_date = tz->ToLocal(date);
return local_date;
}
else
{
return date;
}
}
else
{
return date;
}
}
bool FileLog::synchro_lock()
{
return synchro->Lock();
}
void FileLog::synchro_unlock()
{
synchro->Unlock();
}
} // namespace Winix

92
winixd/core/filelog.h Normal file
View File

@@ -0,0 +1,92 @@
/*
* This file is a part of Winix
* and is distributed under the 2-Clause BSD licence.
* Author: Tomasz Sowa <t.sowa@ttmath.org>
*/
/*
* Copyright (c) 2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
#ifndef headerfile_winix_core_filelog
#define headerfile_winix_core_filelog
#include <sstream>
#include <fstream>
#include <iostream>
#include <string>
#include "core/synchro.h"
#include "log/log.h"
namespace Winix
{
class TimeZones;
class FileLog : public PT::FileLog
{
public:
FileLog();
virtual ~FileLog();
void set_synchro(Synchro * synchro);
void init(const std::wstring & log_file, bool log_stdout, int log_level, bool save_each_line, size_t log_time_zone_id);
void set_time_zones(TimeZones * time_zones);
PT::Date get_local_date(const PT::Date & date);
int get_log_level();
bool should_save_each_line();
protected:
size_t log_time_zone_id;
TimeZones * time_zones;
Synchro * synchro;
virtual bool synchro_lock();
virtual void synchro_unlock();
};
} // namespace Winix
#endif

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -46,6 +46,13 @@ Groups::Groups()
}
void Groups::set_dependency(WinixModel * winix_model)
{
WinixModel::set_dependency(winix_model);
table.set_dependency(winix_model);
}
void Groups::Clear()
{
table.Clear();

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -40,6 +40,8 @@
#include "group.h"
#include "ugcontainer.h"
#include "db/db.h"
#include "winixmodel.h"
namespace Winix
@@ -47,7 +49,7 @@ namespace Winix
class Groups
class Groups : public WinixModel
{
typedef UGContainer<Group> Table;
@@ -55,6 +57,8 @@ Table table;
public:
void set_dependency(WinixModel * winix_model);
typedef Table::Iterator Iterator;
typedef Table::SizeType SizeType;

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -88,7 +88,13 @@ void HTMLFilter::Uninit()
void HTMLFilter::Filter(const std::wstring & in, std::wstring & out)
{
size_t out_projected_len = in.size() * 2 + 1;
if( &in == &out )
{
// out cannot be the same string as in
return;
}
size_t out_projected_len = in.size() * 2 + 1;
if( out.capacity() < out_projected_len )
out.reserve(out_projected_len);
@@ -97,17 +103,27 @@ size_t out_projected_len = in.size() * 2 + 1;
}
HTMLFilter::HTMLFilter()
void HTMLFilter::SetSomeDefaults()
{
pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN];
buffer = new wchar_t[WINIX_HTMLFILTER_BUFFER_MAXLEN];
tab_size = 2;
trim_white = false;
break_after = 0;
wrap_line = 0;
orphan_mode = orphan_nbsp;
safe_mode = false;
skip_tags = false;
skip_commentaries = false;
skip_entities = false;
analyze_entities = false;
}
HTMLFilter::HTMLFilter()
{
pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN];
buffer = new wchar_t[WINIX_HTMLFILTER_BUFFER_MAXLEN];
SetSomeDefaults();
}
@@ -116,6 +132,8 @@ HTMLFilter::HTMLFilter(const HTMLFilter & f)
// don't need to copy the stack
pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN];
buffer = new wchar_t[WINIX_HTMLFILTER_BUFFER_MAXLEN];
SetSomeDefaults();
}
@@ -125,6 +143,8 @@ HTMLFilter & HTMLFilter::operator=(const HTMLFilter & f)
pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN];
buffer = new wchar_t[WINIX_HTMLFILTER_BUFFER_MAXLEN];
// we can copy some fields from f
return *this;
}
@@ -136,6 +156,8 @@ HTMLFilter::~HTMLFilter()
}
void HTMLFilter::BreakWord(size_t break_after_)
{
break_after = break_after_;
@@ -212,9 +234,12 @@ void HTMLFilter::ClearOrphans()
void HTMLFilter::OrphansMode(HTMLFilter::OrphanMode mode)
void HTMLFilter::OrphansMode(const std::wstring & orphan_mode_str)
{
orphan_mode = mode;
if( orphan_mode_str == L"160" )
orphan_mode = orphan_160space;
else
orphan_mode = orphan_nbsp;
}
@@ -224,6 +249,34 @@ void HTMLFilter::SafeMode(bool safe_mode_)
}
void HTMLFilter::SkipTags(bool skip_tags)
{
this->skip_tags = skip_tags;
}
void HTMLFilter::SkipCommentaries(bool skip_commentaries)
{
this->skip_commentaries = skip_commentaries;
}
void HTMLFilter::SkipEntities(bool skip_entities)
{
this->skip_entities = skip_entities;
if( this->skip_entities )
{
this->analyze_entities = true;
}
}
void HTMLFilter::AnalyzeEntities(bool analyze_entities)
{
this->analyze_entities = analyze_entities;
}
void HTMLFilter::SetNoFilterTag(const std::wstring & tag_name)
{
no_filter_tag = tag_name;
@@ -359,7 +412,7 @@ bool HTMLFilter::IsClosingTagForLastItem()
pchar += LastItem().name.size();
SkipWhite();
if( IsClosingTagMark() )
if( IsClosingTagMark(*pchar) )
{
pchar += 1;
return true;
@@ -374,42 +427,20 @@ return false;
// used for such tags as: script, pre, textarea
void HTMLFilter::PutLastTagWithClosingTag()
void HTMLFilter::PutEverythingUntilClosingTag(bool put_closing_tag_as_well)
{
const wchar_t * start = pchar;
const wchar_t * end = pchar;
while( *pchar != 0 )
{
if( IsOpeningTagMark() )
if( IsOpeningTagMark(*pchar) )
{
if( IsClosingTagForLastItem() )
{
PopStack();
CheckNewLine();
break;
}
}
else
{
pchar += 1;
}
}
if( put_closing_tag_as_well )
end = pchar;
Put(start, pchar);
}
// used with <nofilter> </nofilter> tags
void HTMLFilter::PutTextBetweenLastTagWithClosingTag()
{
const wchar_t * start = pchar, * end = pchar;
while( *pchar != 0 )
{
if( IsOpeningTagMark() )
{
if( IsClosingTagForLastItem() )
{
PopStack();
CheckNewLine();
break;
@@ -427,16 +458,36 @@ const wchar_t * start = pchar, * end = pchar;
void HTMLFilter::SkipAndCheckClosingTag()
{
bool is_quoted = false;
wchar_t quote_char = 0;
for( ; *pchar ; ++pchar )
{
if( LastItem().type == Item::opening && IsClosingXmlSimpleTagMark() ) // closing xml tag: default '/'
if( *pchar == '"' || *pchar == '\'' )
{
if( is_quoted )
{
if( *pchar == quote_char )
{
is_quoted = false;
}
}
else
{
is_quoted = true;
quote_char = *pchar;
}
}
else
if( !is_quoted && LastItem().type == Item::opening && IsClosingXmlSimpleTagMark(*pchar) ) // closing xml tag: default '/'
{
LastItem().type = Item::simple;
}
if( IsClosingTagMark() )
else
if( !is_quoted && IsClosingTagMark(*pchar) )
{
++pchar;
break;
@@ -451,7 +502,7 @@ bool HTMLFilter::IsValidCharForName(int c)
if( (c>='a' && c<='z') ||
(c>='A' && c<='Z') ||
(c>='0' && c<='9') ||
c=='-' || c=='!' )
c=='-' || c=='!' || c==':') // : for namespace character
return true;
return false;
@@ -470,6 +521,18 @@ return false;
}
bool HTMLFilter::IsValidCharForEntityName(int c)
{
if( (c>='a' && c<='z') ||
(c>='A' && c<='Z') ||
(c>='0' && c<='9') ||
c=='#' )
return true;
return false;
}
void HTMLFilter::ReadItemName()
{
size_t i;
@@ -502,38 +565,60 @@ size_t i;
void HTMLFilter::ReadItemAttrValue(bool has_quote)
void HTMLFilter::ReadItemAttrValueAdd(const wchar_t * value_start, const wchar_t * value_end)
{
attr_value.push_back(std::wstring());
if( analyze_entities )
{
AnalyzeEntitiesAndPut(value_start, value_end, &attr_value.back());
}
else
{
attr_value.back().append(value_start, value_end);
}
}
void HTMLFilter::ReadItemAttrValue(bool has_quote, wchar_t quote_char)
{
size_t i;
// sprawdzic to wszedzie bo teraz jest tablica
attr_value.clear();
attr_value_temp.clear();
const wchar_t * value_start = pchar;
size_t value_len = 0; // how many non white characters
// !! dodac obsluge pojedynczego cudzyslowu
for(i=0 ; *pchar && *pchar != '\"' && !IsClosingTagMark() && (has_quote || (*pchar!=10 && !IsWhite(*pchar)) ); ++i )
for(i=0 ; *pchar ; ++i, ++pchar )
{
if( *pchar==10 || IsWhite(*pchar) )
if( has_quote )
{
if( !attr_value_temp.empty() )
{
attr_value.push_back(attr_value_temp);
attr_value_temp.clear();
}
if( *pchar == quote_char )
break;
}
else
if( i < WINIX_HTMLFILTER_ATTR_VALUE_MAXLEN )
attr_value_temp += *pchar;
{
if( IsClosingTagMark(*pchar) || *pchar == 10 || IsWhite(*pchar) )
break;
}
++pchar;
if( *pchar==10 || IsWhite(*pchar) )
{
if( value_len > 0 && value_len <= WINIX_HTMLFILTER_ATTR_VALUE_MAXLEN )
ReadItemAttrValueAdd(value_start, pchar);
value_len = 0;
}
else
{
if( value_len == 0 )
value_start = pchar;
value_len += 1;
}
}
if( !attr_value_temp.empty() )
{
attr_value.push_back(attr_value_temp);
attr_value_temp.clear();
}
if( value_len > 0 && value_len <= WINIX_HTMLFILTER_ATTR_VALUE_MAXLEN )
ReadItemAttrValueAdd(value_start, pchar);
}
@@ -584,6 +669,57 @@ void HTMLFilter::Put(const std::wstring & str)
}
// out can be null
void HTMLFilter::AnalyzeEntitiesAndPut(const wchar_t * str, const wchar_t * end, std::wstring * out)
{
size_t epsilon = 8; // !! IMPROVE ME put as a constant
const wchar_t * old_str = str;
while( str < end )
{
if( IsStartingEntityMark(*str) )
{
const wchar_t * entity_start = str;
str += 1; // skip &
for(size_t i=0 ; *str && IsValidCharForEntityName(*str) && i < epsilon ; ++i, ++str)
{
}
if( IsEndingEntityMark(*str) && str - entity_start > 1 ) // at least one character in entity name
{
if( out )
out->append(old_str, entity_start);
else
Put(old_str, entity_start);
str += 1; // skip ;
if( !skip_entities )
{
if( out )
out->append(entity_start, str);
else
Put(entity_start, str);
}
EntityFound(entity_start + 1, str - 1); // without & and ;
old_str = str;
}
}
else
{
str += 1;
}
}
if( out )
out->append(old_str, end);
else
Put(old_str, end);
}
int HTMLFilter::CheckOrphan(const wchar_t * str, const wchar_t * end, const std::wstring & orphan_str)
@@ -673,12 +809,12 @@ return CheckOrphan(str, end, LastItem().porphans->tab);
// (useful in html entities)
// !! dodac sprawdzanie czy dlugosc stringu nie jest mala tez (end-str)
// i wtedy tez nie dodajemy zadnego znaku
bool HTMLFilter::HasSemiloconAround(const wchar_t * str, const wchar_t * end)
bool HTMLFilter::HasEntityEndAround(const wchar_t * str, const wchar_t * end)
{
size_t i, epsilon = 8;
size_t i, epsilon = 8;// !! IMPROVE ME put as a constant
for(i=0 ; str < end && i<epsilon ; ++i, ++str)
if( *str == ';' )
if( IsEndingEntityMark(*str) )
return true;
return false;
@@ -699,11 +835,11 @@ void HTMLFilter::PutNormalNonWhite(const wchar_t * & str, const wchar_t * end)
{
const wchar_t * word = str;
size_t non_whites = 0;
bool was_semicolon = false;
bool was_entity_end = false;
for( ; str < end && *str!=10 && !IsWhite(*str) ; ++str, ++non_whites )
{
if( break_after != 0 && non_whites >= break_after && (was_semicolon || !HasSemiloconAround(str, end)) )
if( break_after != 0 && non_whites >= break_after && (was_entity_end || !HasEntityEndAround(str, end)) )
{
Put(word, str);
word = str;
@@ -712,10 +848,13 @@ bool was_semicolon = false;
CheckLineWrap();
}
was_semicolon = (*str == ';');
was_entity_end = (IsEndingEntityMark(*str));
}
Put(word, str);
if( analyze_entities )
AnalyzeEntitiesAndPut(word, str, nullptr);
else
Put(word, str);
}
@@ -795,8 +934,8 @@ void HTMLFilter::PutClosingTagMark()
// !! zmienic na lepsza nazwe
// bo to nie zwraca true jesli tag jest safe
// !! IMPROVE ME change to a better name
// this functions does not return true when the tag is safe
bool HTMLFilter::IsTagSafe(const wchar_t * tag)
{
if( !safe_mode )
@@ -838,9 +977,10 @@ bool HTMLFilter::IsTagSafe(const std::wstring & tag)
bool HTMLFilter::PutOpeningTag()
{
if( !IsTagSafe(LastItem().name) )
// !! IMPROVE ME
// !! dodac tutaj skipniecie calego tagu
{
SkipAndCheckClosingTag();
return false;
}
PutOpeningTagMark();
Put(LastItem().name);
@@ -852,7 +992,7 @@ return true;
void HTMLFilter::PutClosingTag(const wchar_t * tag)
{
if( !IsTagSafe(tag) )
if( skip_tags || !IsTagSafe(tag) )
return;
PutOpeningTagMark();
@@ -897,28 +1037,28 @@ void HTMLFilter::PutNewLine()
// we assume the size of the opening mark to be one
bool HTMLFilter::IsOpeningTagMark()
bool HTMLFilter::IsOpeningTagMark(wchar_t c)
{
return (*pchar == '<');
return (c == '<');
}
// we assume the size of the closing mark to be one
bool HTMLFilter::IsClosingTagMark()
bool HTMLFilter::IsClosingTagMark(wchar_t c)
{
return (*pchar == '>');
return (c == '>');
}
// the slash at the end <img src=".." /> (without '>' character)
// we assume the size of the mark to be one
bool HTMLFilter::IsClosingXmlSimpleTagMark()
bool HTMLFilter::IsClosingXmlSimpleTagMark(wchar_t c)
{
return (*pchar == '/');
return (c == '/');
}
bool HTMLFilter::IsOpeningCommentaryTagMark()
bool HTMLFilter::IsOpeningCommentaryTagMark(const wchar_t * str)
{
static wchar_t comm_open[] = L"<!--";
size_t comm_open_len = sizeof(comm_open) / sizeof(wchar_t) - 1;
@@ -933,6 +1073,18 @@ size_t HTMLFilter::OpeningCommentaryTagMarkSize()
}
bool HTMLFilter::IsStartingEntityMark(wchar_t c)
{
return (c == '&');
}
bool HTMLFilter::IsEndingEntityMark(wchar_t c)
{
return (c == ';');
}
// skipping the commentary tag if exists
bool HTMLFilter::SkipCommentaryTagIfExists()
@@ -940,7 +1092,7 @@ bool HTMLFilter::SkipCommentaryTagIfExists()
static wchar_t comm_close[] = L"-->";
size_t comm_close_len = sizeof(comm_close) / sizeof(wchar_t) - 1;
if( !IsOpeningCommentaryTagMark() )
if( !IsOpeningCommentaryTagMark(pchar) )
return false;
pchar += OpeningCommentaryTagMarkSize();
@@ -984,7 +1136,7 @@ void HTMLFilter::ReadNormalTextSkipWhite(const wchar_t * & start, const wchar_t
start = pchar;
// exception for the commentary tag
if( IsOpeningCommentaryTagMark() || !IsOpeningTagMark() )
if( IsOpeningCommentaryTagMark(pchar) || !IsOpeningTagMark(*pchar) )
{
PutNewLine();
PutTabs(stack_len);
@@ -1005,13 +1157,23 @@ const wchar_t * last_non_white = pchar;
while( *pchar != 0 )
{
const wchar_t * commentary_start = pchar;
if( SkipCommentaryTagIfExists() )
{
last_non_white = pchar - 1; // pointing at the last '>' from a commentary
PutNormalText(start, commentary_start);
if( !skip_commentaries )
{
PutNormalText(commentary_start, pchar);
}
start = pchar;
}
else
{
if( IsOpeningTagMark() )
if( IsOpeningTagMark(*pchar) )
break;
if( !IsWhite(*pchar) )
@@ -1029,7 +1191,7 @@ const wchar_t * last_non_white = pchar;
bool HTMLFilter::PrintOpeningItem()
{
if( IsNameEqual(no_filter_tag, LastItem().name) )
if( skip_tags || IsNameEqual(no_filter_tag, LastItem().name) )
return true;
if( last_new_line )
@@ -1068,16 +1230,15 @@ bool HTMLFilter::ReadItemAttr()
pchar += 1; // skipping '='
SkipWhiteLines();
// !! dodac obsluge pojedynczego cudzyslowu
bool has_quote = (*pchar == '\"');
bool has_quote = (*pchar == '\"' || *pchar == '\'');
wchar_t quote_char = *pchar;
if( has_quote )
pchar += 1; // skipping the first quote mark
ReadItemAttrValue(has_quote);
ReadItemAttrValue(has_quote, quote_char);
if( *pchar == '\"' )
if( has_quote && *pchar == quote_char )
pchar += 1; // skipping the last quote mark
return true;
@@ -1112,7 +1273,7 @@ void HTMLFilter::PrintItemAttr()
{
size_t i;
if( IsNameEqual(no_filter_tag, LastItem().name) )
if( skip_tags || IsNameEqual(no_filter_tag, LastItem().name) )
return;
Put(' ');
@@ -1150,11 +1311,17 @@ void HTMLFilter::ReadItemClosing()
void HTMLFilter::ReadItemSpecial()
{
LastItem().type = Item::special;
PutOpeningTagMark();
if( !skip_tags )
PutOpeningTagMark();
const wchar_t * start = pchar;
pchar += 1; // skipping '!'
ReadItemName();
SkipAndCheckClosingTag();
if( pchar > start )
if( !skip_tags && pchar > start )
Put(start, pchar);
// closing tag mark is printed directly from the source
@@ -1176,7 +1343,7 @@ void HTMLFilter::ReadItemOpening()
SkipAndCheckClosingTag(); // here LastItem().type can be changed to 'simple'
if( !IsNameEqual(no_filter_tag, LastItem().name) )
if( !skip_tags && !IsNameEqual(no_filter_tag, LastItem().name) )
{
if( LastItem().type == Item::simple )
Put(L" /");
@@ -1187,6 +1354,15 @@ void HTMLFilter::ReadItemOpening()
}
void HTMLFilter::ItemFound()
{
}
void HTMLFilter::EntityFound(const wchar_t * str, const wchar_t * end)
{
}
bool HTMLFilter::ReadItem()
{
if( *pchar == 0 )
@@ -1209,6 +1385,8 @@ bool HTMLFilter::ReadItem()
CheckNewLine();
LastItem().new_line = last_new_line;
ItemFound();
return true;
}
@@ -1265,6 +1443,8 @@ bool HTMLFilter::IsNameEqual(const std::wstring & name1, const std::wstring & na
// len characters from both strings must be equal
// IMPROVE ME change name to something like IsBeginningNameEqual
// and move to text.h (pikotools)
bool HTMLFilter::IsNameEqual(const wchar_t * name1, const wchar_t * name2, size_t len)
{
for( ; *name1!=0 && *name2!=0 && len>0 ; ++name1, ++name2, --len )
@@ -1332,13 +1512,13 @@ void HTMLFilter::CheckExceptions()
// in safe_mode the script tag is ignored
if( !safe_mode && IsLastTag(L"script") )
PutLastTagWithClosingTag();
PutEverythingUntilClosingTag(!skip_tags);
if( IsLastTag(L"pre") || IsLastTag(L"textarea") )
PutLastTagWithClosingTag();
PutEverythingUntilClosingTag(!skip_tags);
if( IsLastTag(no_filter_tag) )
PutTextBetweenLastTagWithClosingTag();
PutEverythingUntilClosingTag(false);
if( IsLastTag(L"body") )
LastItem().has_body_tag = true;
@@ -1371,7 +1551,7 @@ int i;
for(int z=(int)stack_len-2 ; z>=i ; --z)
{
if( pstack[z].new_line )
if( !skip_tags && pstack[z].new_line )
{
PutNewLine();
PutTabs(z);
@@ -1421,7 +1601,7 @@ void HTMLFilter::CheckClosingTags()
if( IsNameEqual(pstack[stack_len-1].name, pstack[stack_len-2].name) )
{
// last closing tag is from the previous one
if( pstack[stack_len-2].new_line )
if( !skip_tags && pstack[stack_len-2].new_line )
{
PutNewLine();
PutTabs(stack_len-2);
@@ -1444,7 +1624,7 @@ bool HTMLFilter::PrintRest()
const wchar_t * start = pchar;
// in safe mode we do not print the rest html code
if( safe_mode )
if( safe_mode || skip_tags )
return false;
while( *pchar )
@@ -1474,7 +1654,7 @@ void HTMLFilter::ReadLoop()
{
if( stack_len > 1 )
{
pstack[stack_len-2].new_line = LastItem().new_line;
//pstack[stack_len-2].new_line = LastItem().new_line;
}
else
if( trim_white )
@@ -1492,6 +1672,10 @@ void HTMLFilter::ReadLoop()
{
CheckClosingTags();
}
else
{
PopStack();
}
ReadNormalText();
}

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -39,6 +39,7 @@
#include <map>
#include <vector>
#include <algorithm>
#include "core/winixbase.h"
namespace Winix
@@ -86,7 +87,7 @@ namespace Winix
the filter recognizes xml simple tags (with / at the end) such as: <br />
*/
class HTMLFilter
class HTMLFilter : public WinixBase
{
public:
@@ -99,7 +100,7 @@ public:
HTMLFilter();
HTMLFilter(const HTMLFilter & f);
HTMLFilter & operator=(const HTMLFilter & f);
~HTMLFilter();
virtual ~HTMLFilter();
// main methods used for filtering
@@ -128,13 +129,11 @@ public:
// false by default
void TrimWhite(bool trim);
// first tabs in a tree
// default: 2 (spaces)
// set 0 to turn off
void InsertTabs(size_t tabsize);
// set a name of a html tag which will be used as 'nofilter' tag
// elements between such tags are not filtered (similarly as in <pre> and <textarea>)
// these tags (opening and closing) will no be placed in the html output
@@ -145,17 +144,32 @@ public:
void AssignOrphans(const std::wstring & lang_code, const std::vector<std::wstring> & otab);
void ClearOrphans();
// check 'orphans' for the specicic language
// if an orphan is detected then the non-break space ("&nbsp;" or ascii 160 code) will be put
// default disable (lang_none)
void OrphansMode(OrphanMode mode = orphan_nbsp);
void OrphansMode(const std::wstring & orphan_mode);
// skipping some unsafe tags
// (script, iframe, frame, frameset, applet, head, meta, html, link, body, ...)
void SafeMode(bool safe_mode_);
// skip all html tags
// gives only text without markup
// but there can be commentaries
void SkipTags(bool skip_tags);
// skip commentaries
void SkipCommentaries(bool skip_commentaries);
// if true then entities such as &nbsp; are skipped
// this automatically turns on AnalyzeEntities
// in such a case FoundEntity callbacks are sent
void SkipEntities(bool skip_entities);
// analyze html entities such as &nbsp;
// virtual method: FoundEntity is called
// entities are analyzed in normal text and in attribute values such as <p class="a&nbsp;">
void AnalyzeEntities(bool analyze_entities);
protected:
@@ -216,13 +230,18 @@ protected:
virtual void Init();
virtual void Uninit();
virtual bool IsOpeningTagMark();
virtual bool IsOpeningCommentaryTagMark();
virtual bool IsClosingTagMark();
virtual bool IsClosingXmlSimpleTagMark();
virtual bool IsOpeningTagMark(wchar_t c);
virtual bool IsClosingTagMark(wchar_t c);
virtual bool IsClosingXmlSimpleTagMark(wchar_t c);
virtual bool IsStartingEntityMark(wchar_t c);
virtual bool IsEndingEntityMark(wchar_t c);
virtual bool IsOpeningCommentaryTagMark(const wchar_t * str);
virtual size_t OpeningCommentaryTagMarkSize();
virtual bool IsValidCharForName(int c);
virtual bool IsValidCharForAttrName(int c);
virtual bool IsValidCharForEntityName(int c);
virtual void CheckExceptions();
virtual bool SkipCommentaryTagIfExists();
@@ -230,6 +249,7 @@ protected:
virtual void Put(const wchar_t * str);
virtual void Put(const wchar_t * str, const wchar_t * end);
virtual void Put(const std::wstring & str);
virtual void AnalyzeEntitiesAndPut(const wchar_t * str, const wchar_t * end, std::wstring * out);
virtual void PutOpeningTagMark();
virtual void PutClosingTagMark();
@@ -239,10 +259,14 @@ protected:
virtual void PutNormalText(const wchar_t * str, const wchar_t * end);
virtual void ReadNormalTextSkipWhite(const wchar_t * & start, const wchar_t * & last_non_white);
virtual void ItemFound();
virtual void EntityFound(const wchar_t * str, const wchar_t * end);
/*
others
*/
void SetSomeDefaults();
Item & GetItem(size_t i);
Item & LastItem();
@@ -274,7 +298,6 @@ protected:
void SkipWhiteWithFirstNewLine();
void SkipWhiteLines(const wchar_t * & str, const wchar_t * end);
bool IsClosingTagForLastItem();
size_t OpeningCommentaryTagMarkSize();
void SkipAndCheckClosingTag();
void PopStack();
@@ -288,7 +311,8 @@ protected:
bool PrintOpeningItem();
void ReadItemName();
void ReadItemAttrName();
void ReadItemAttrValue(bool has_quote);
void ReadItemAttrValueAdd(const wchar_t * value_start, const wchar_t * value_end);
void ReadItemAttrValue(bool has_quote, wchar_t quote_char);
bool ReadItemAttr();
bool CheckItemAttr();
@@ -304,11 +328,10 @@ protected:
void CheckChar(wchar_t c);
void CheckLineWrap();
bool HasSemiloconAround(const wchar_t * str, const wchar_t * end);
bool HasEntityEndAround(const wchar_t * str, const wchar_t * end);
void PutNormalNonWhite(const wchar_t * & str, const wchar_t * end);
void PutNormalWhite(const wchar_t * & str, const wchar_t * end);
void PutLastTagWithClosingTag();
void PutTextBetweenLastTagWithClosingTag();
void PutEverythingUntilClosingTag(bool put_closing_tag_as_well);
void PutTabs(size_t len);
void PutNonBreakingSpace();
void PutNewLine();
@@ -335,6 +358,10 @@ protected:
size_t line_len; //length of the current line (without first spaces which create the html tree)
bool safe_mode; // skipping some unsafe tags
Orphans orphans_temp;
bool skip_tags;
bool skip_commentaries;
bool skip_entities;
bool analyze_entities;
};

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2008-2014, Tomasz Sowa
* Copyright (c) 2008-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -36,6 +36,7 @@
#define headerfile_winix_core_httpsimpleparser
#include <string>
#include "winixmodel.h"
namespace Winix
@@ -43,7 +44,7 @@ namespace Winix
class HttpSimpleParser
class HttpSimpleParser : public WinixModel
{
protected:

View File

@@ -35,9 +35,7 @@
#include <ctime>
#include "image.h"
#include "utf8/utf8.h"
#include "log.h"
#include "system.h"
#include "plugin.h"
#include "lock.h"
@@ -492,34 +490,34 @@ void Image::ImageSavedCorrectly()
}
log << log3 << "Image: generated a thumbnail: " << dst_path << logend;
plugin.Call((Session*)0, WINIX_CREATED_THUMB, &file_work);
plugin->Call((Session*)0, WINIX_CREATED_THUMB, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_RESIZE )
{
log << log3 << "Image: image resized: " << dst_path << logend;
plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
plugin->Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CROP )
{
log << log3 << "Image: image cropped: " << dst_path << logend;
// !! IMPROVE ME add a correct message
//plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
//plugin->Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CROP_THUMB )
{
log << log3 << "Image: image thumbnail cropped: " << dst_path << logend;
// !! IMPROVE ME add a correct message
//plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
//plugin->Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CREATE_CROP_NEW_THUMB )
{
log << log3 << "Image: a new thumbnail from an original image was cropped: " << dst_path << logend;
// !! IMPROVE ME add a correct message
//plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
//plugin->Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
}

View File

@@ -87,11 +87,21 @@ struct IPBan
// the ban level to a greater value
time_t expires;
// how many incorrect login attempts there are
unsigned int incorrect_login_events;
unsigned short int incorrect_login_events;
// in the future there can be more *_events fields
// how many incorrect encoded cookie were sent
// only used if config.session_cookie_encode is true and session_keys_file is defined
unsigned short int broken_encoded_cookie_events;
// how many incorrect session identifiers were sent
unsigned short int session_hijacking_events;
// client didn't send a session cookie
// it can be a bot or just someone wants to DOS the server
// (a new session will be create)
unsigned short int no_session_cookie_events;
bool HasFlag(int flag) const
@@ -123,7 +133,7 @@ struct IPBan
}
void AddNextBanLevel(time_t level1_expires, time_t level2_expires, time_t level3_expires)
void IncrementBanLevel(time_t level1_expires, time_t level2_expires, time_t level3_expires)
{
if( HasFlag(WINIX_IPBAN_FLAG_BAN_LEVEL3) )
{
@@ -164,14 +174,20 @@ struct IPBan
flags = 0;
last_used = 0;
expires = 0;
incorrect_login_events = 0;
incorrect_login_events = 0;
broken_encoded_cookie_events = 0;
session_hijacking_events = 0;
no_session_cookie_events = 0;
}
void ClearAfterRemovingBan()
void ResetEventsCounters()
{
ClearFlag(WINIX_IPBAN_FLAG_ACTIVE);
incorrect_login_events = 0;
incorrect_login_events = 0;
broken_encoded_cookie_events = 0;
session_hijacking_events = 0;
no_session_cookie_events = 0;
expires = 0;
}

View File

@@ -5,7 +5,7 @@
*/
/*
* Copyright (c) 2012-2014, Tomasz Sowa
* Copyright (c) 2012-2018, Tomasz Sowa
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -37,6 +37,8 @@
#include <vector>
#include "ipban.h"
#include "winixmodel.h"
namespace Winix
@@ -44,7 +46,7 @@ namespace Winix
class IPBanContainer
class IPBanContainer : public WinixModel
{
public:

Some files were not shown because too many files have changed in this diff Show More