IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
- James suggested using gcc's "deprecated" attribute to mark the context
structure fields to generate warnings. This creates a scenario with the
best of all worlds. I'm able to move to an organization that more easily
allows future enhancements, while avoiding any mandatory changes by
applications. Thanks, James!
- Updated WHATSNEW.txt so that it accurately reflects the current state of
affairs.
Derrell
(cherry picked from commit a67f96fbe9683b46c2149f7cb439d13f7f0e6ecd)
(This used to be commit 046653403fadfa2d42decce7048eca6321b321c6)
- Ensured that all public functions have documentation in libsmbclient.h
- Reformatted for "proper" indentation
- Re-added temporarily-disabled alternate authentication function capability
Derrell
(cherry picked from commit 64b7150d92849a1e1e2416b9dcc12fae8d6bea99)
(This used to be commit dca8a612e94095e38df50f0fe567c75ceb8124fe)
Given the tacit (if that) approval by some people, and clear disapproval by
others for my proposed clean-up and reorganization of libsmbclient, I've come
up with a slightly different approach. This commit changes back to the
original libsmbclient.h SMBCCTX structure which will maintain ABI
compatibility. I retain, here, the setter and getter functions which all new
code should use. Older programs already compiled should continue to work
fine. Older programs being recompiled will encounter compile-time errors
(intentionally!) so that the code can be corrected to use the setter/getter
interfaces.
Although this doesn't clean up the interface in the way I had wanted, the code
reorganization and requirement for new programs to use the setters and getters
allows future progress to be made on libsmbclient without further muddying up
the interface, while retaining the ABI compatibility that was the big issue
causing disapproval. I hope that this compromise is adequate.
Derrell
(cherry picked from commit 56429a3d60b2a48963342f6340b3c01469a892c6)
(This used to be commit 7bc53f57dcb1c3bb80cb20796ebfc743c22a76e3)
The libsmbclient interface has suffered from difficulty of improvement and
feature enrichment without causing ABI breakage. Although there were a number
of issues, the primary ones were:
(a) the user of the library would manually manipulate the context structure
members, meaning that nothing in the context structure could change other
than adding stuff at the end;
(b) there were three methods of setting options: setting bits in a flags field
within the context structure, setting explicit options variables within an
options structure in the context structure, and by calling the
smbc_option_set() function;
(c) the authentication callback did not traditionally provide enough
information to the callee which required adding an option for a callback
with a different signature, and now there are requests for even more
information at the callback, requiring yet a third signature and option to
set it (if we implement that feature).
This commit provides a reorganization of the code which fixes (a) and (b).
The context structure is now entirely opaque, and there are setter and getter
functions for manipulating it. This makes maintaining ABI consistency much,
much easier.
Additionally, the options setting/getting has been unified into a single
mechanism using smbc_option_set() and smbc_option_get().
Yet to be completed is a refactoring of the authentication callback (c).
The test programs in examples/libsmbclient have been modified (if necessary;
some applications require no changes at all) for the new API and a few have
been minimally tested.
Derrell
(cherry picked from commit d4b4bae8ded824d06ad5ab0e219f71187ee5c771)
(This used to be commit 59292c0da8880afd7bac82f6a5bba009f3827ea0)
... after a REALLY long session staring at sniffs we can now join XP to
v3-2-test again...
Apparently not doing this makes XP keep an internal handle to LSA open which
confuses the hell out of it.
Karolin, this needs to be in v3-2-stable :-)
Volker
(cherry picked from commit 2c42fc21d8bede226e411623aecd69038477373b)
(This used to be commit a94313e06a030e1a1afff18c797e700eb6b25248)
Jeremy, in 3.0 we allowed get_mydnsdomname and get_mydnsfullname to fail
without filling in anything useful. Worked fine. Without this patch and a empty
/etc/hosts and no DNS configured, session setup would return
NT_STATUS_BAD_NETWORK_NAME. This is confusing at best, BAD_NETWORK_NAME afaik
is only ever returned from tcon normally.
This restores the 3.0 behaviour.
Comments?
Volker
(This used to be commit 4170259e5f83c281966a80916e4ece6937e08988)
This reverts commit ae254cb61f4b9331755848c47ebc34e90dd80390.
(cherry picked from commit 030bef7f22f7a73466204b7860f397dbca9f2ab0)
(This used to be commit 575b829b390f7f07138305adc2988918eda95ce1)
This reverts commit f5356825698a02df2d400b51dd95d1f857c83e81.
(cherry picked from commit 5f53a62be8a21b8d92ac44b18d202882500356e8)
(This used to be commit 8beead9c936038365f28467e527b2c066e3a5440)
This reverts commit 844a163458c7585e4306a21ffdae5d08e03d6e4d.
(cherry picked from commit 5ab1cfda500de07ff3c712442ab2fc74eecc8886)
(This used to be commit 7821066d4ff4a8503a596ab342a2a84ed9a9f8b9)
This reverts commit 719527f55e88f0c5fdceda5c807475aba299c79f.
(cherry picked from commit ac301fada257e2d3b50148109a3d44fa1421b0b4)
(This used to be commit 1bfc4404e7f7314111f979bd09321e39be76bf15)
smbget needs libwbclient.
Michael
(cherry picked from commit 78bc496ecf72b5c2474911302e81a90c488e3070)
(This used to be commit 901936edd33ae710c6f23bea528132ee5e10e097)
It was only used in configure, but lib/replace already
has a much better version of it.
metze
(This used to be commit c9b60b75b4763c37cfa63741b4f055e4ea488e92)
This is used for two purposes:
First, I'm using it to test the async I/O code. In the forked process it is
pretty easy to delay a reply for a random amount of time. See the
BUILD_FARM_HACKS snippet.
Second, there are systems around that claim to have Posix AIO but which is
broken. This might be some help for those systems.
Also add tests how to pass file descriptors
(This used to be commit b0e52cecf2009d4c7f29412dadf17910e54e4327)
Forgot to git add Makefile.in before doing git commit --amend
in previous commit...
Michael
(This used to be commit 7cf645cdae8ce17705036951538991b0a9dbefaf)
Don't fail when there is no address assigned to the interface.
Put NULL into the ifaddrs structure instead.
Michael
(cherry picked from commit ee170c85e0e76411bd752de5fe51db6940dab929)
(This used to be commit 650cc1da4b4404880389c583dbb07ce86df48576)
Michael
cherry-picked from libreplace-part of 9d2bab09aac22c00fe23f1e1265a2dbd0901e9ce
and adapted replacetort creation
(This used to be commit 52d79ad4872a20cf55f31aba97629c2561bfc16c)
We already did this before b994f899b42d294c0418bdc82660a2f7510667d6.
This is needed to handle NULL strings, where strlen() would crash...
Maybe we should add a strlen_a() and strlen_a_term() later...
metze
(This used to be commit c445a17a91827c6c95b3a1cda9b78f5cdd41aa55)