From: Tim Beale Date: Thu, 13 Dec 2018 21:30:38 +0000 (+1300) Subject: s3:pylibsmb: Add flags used by .list() to SMB Py bindings X-Git-Tag: tdb-1.3.17~82 X-Git-Url: http://git.samba.org/?p=samba.git;a=commitdiff_plain;h=3ba32aa55fa6bcd89a2ae9ed73e748ea8ca30b26 s3:pylibsmb: Add flags used by .list() to SMB Py bindings These flags are exposed by the s4 code. Python code that calls .list() checks the returned attribs/mode for the directory listing, e.g. to work out whether something is a sub-directory: if item['attrib'] & libsmb.FILE_ATTRIBUTE_DIRECTORY... BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Douglas Bagnall --- diff --git a/source3/libsmb/pylibsmb.c b/source3/libsmb/pylibsmb.c index 1c1216fc199..4322c2b0712 100644 --- a/source3/libsmb/pylibsmb.c +++ b/source3/libsmb/pylibsmb.c @@ -1565,5 +1565,25 @@ MODULE_INIT_FUNC(libsmb) } Py_INCREF(&py_cli_state_type); PyModule_AddObject(m, "Conn", (PyObject *)&py_cli_state_type); + +#define ADD_FLAGS(val) PyModule_AddObject(m, #val, PyInt_FromLong(val)) + + ADD_FLAGS(FILE_ATTRIBUTE_READONLY); + ADD_FLAGS(FILE_ATTRIBUTE_HIDDEN); + ADD_FLAGS(FILE_ATTRIBUTE_SYSTEM); + ADD_FLAGS(FILE_ATTRIBUTE_VOLUME); + ADD_FLAGS(FILE_ATTRIBUTE_DIRECTORY); + ADD_FLAGS(FILE_ATTRIBUTE_ARCHIVE); + ADD_FLAGS(FILE_ATTRIBUTE_DEVICE); + ADD_FLAGS(FILE_ATTRIBUTE_NORMAL); + ADD_FLAGS(FILE_ATTRIBUTE_TEMPORARY); + ADD_FLAGS(FILE_ATTRIBUTE_SPARSE); + ADD_FLAGS(FILE_ATTRIBUTE_REPARSE_POINT); + ADD_FLAGS(FILE_ATTRIBUTE_COMPRESSED); + ADD_FLAGS(FILE_ATTRIBUTE_OFFLINE); + ADD_FLAGS(FILE_ATTRIBUTE_NONINDEXED); + ADD_FLAGS(FILE_ATTRIBUTE_ENCRYPTED); + ADD_FLAGS(FILE_ATTRIBUTE_ALL_MASK); + return m; }