1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-15 23:24:37 +03:00

90 Commits

Author SHA1 Message Date
Andrew Tridgell
b7a1d19d11 use sys_fsusage() not disk_free() in printing.c
(This used to be commit 763704f78fc44976b2d977e8a08ffdeb727903c4)
2000-04-19 08:44:56 +00:00
Jeremy Allison
4217c939ec locking/locking.c: Fixed placeholder code for POSIX locking.
printing/printing.c: Cast tdb_delete to (tdb_traverse_func) to stop warning.
                     tmpfile gives mirror warning.
smbd/groupname.c: Remember to file_lines_free() on exit.
tdb/tdb.h: Add tdb_traverse_func typedef.
Jeremy
(This used to be commit 204ca1195c86499bd9beb273ce573db7a56ccead)
2000-04-18 20:41:04 +00:00
Andrew Tridgell
db0631f2d0 don't parse blank lines
(This used to be commit 8b1afe7e1af0a62244632e0a58b9e513ab4366f0)
2000-04-18 02:35:14 +00:00
Andrew Tridgell
75731f8c23 fixed some crash bugs in the nt forms parsing
(This used to be commit e505a6ddf3df37ca485cae117c53fa96d736f897)
2000-04-18 02:17:46 +00:00
Andrew Tridgell
19f946ba6f converted a bunch more functions to use a fd instead of a FILE*
to support some of this I added the following functions in util_file.c

file_lines_pload : load lines from a pipe
file_pload : load a pipe into memory
(This used to be commit a09470817c5b21dba42f9ef4ce5e8b768a254c0b)
2000-04-16 11:00:21 +00:00
Andrew Tridgell
6684245bce got rid of all the FILE* calls in the NT print system.
this also fixes a few security holes in that code. JF - you need to be
careful about open files for writing! symlinks can trap you.

note that I always unlink() the file first, then open with
O_EXCL. That is a cheap trick to avoid the symlink problems.
(This used to be commit ad56e3d7915100a83b33ad36e627e13325197942)
2000-04-16 09:41:39 +00:00
Andrew Tridgell
7ee1c906f4 improved the error handling and added queue pause and resume
(This used to be commit 5f5b79c9264510f5851ad1d6f3ce9e2b15e4a0da)
2000-04-16 08:03:37 +00:00
Andrew Tridgell
5711f1f196 the bulk of the changes. Also split the loadparm related code into printing/load.c
so swat can get it without linking to the backend code

------------
The following series of commits are for the new tdb based printing
backend. This completely replaces our old printing backend.

Major changes include:

- all print ops are now done in printing/*.c rather than scattered all
  over the place
- system job ids are decoupled from SMB job ids
- the lpq parsers don't need to be nearly so smart, they only need to
  parse the filename, the status and system job id
- we can store lots more info about a job, including the full job name
- the queue cache control is much better

I also added a new utility routine file_lines_load() that loads a text
file and parses it into lines. This is used in out lpq parsing and I
also want to use it to replace all of our fgets() based code in other
places.
(This used to be commit a902caf8d78ae4cb11ea3776d10273cb37d5fcd0)
2000-04-16 06:20:02 +00:00
Andrew Tridgell
c3043695ae rather than doing print file open processing in open.c we now handle
it in print_open_file()

that removes a lot of special cases in open.c and makes the print
handling code much easier to understand.

there is still lots to do in printing.c, but this at least gets
printing separated from the mainline code
(This used to be commit e064422af335cd791752a2b54a17a13467ace041)
2000-04-10 13:00:12 +00:00
Andrew Tridgell
001765501e split out the lpq parsing code into a separate file
printing/lpq_parse.c

getting ready for the new printing backend
(This used to be commit 0ec1072e0143952139be64e8001582eadcc9f60e)
2000-04-10 03:09:42 +00:00
Jeremy Allison
aac823aca1 Modified interfaces and added checks around *all* *alloc calls
so that errors are returned on memory allocation failure.
Jeremy.
(This used to be commit 9a118cd4a2b03146b341eeffb62144a2d29b574c)
2000-04-06 22:48:53 +00:00
Jean-François Micouleau
154596cae5 filled the architecture table (useless for the moment).
fixed GetJob.

	J.F.
(This used to be commit 3fea49e1d896987c54187cb326607284810fcb0d)
2000-04-06 16:23:04 +00:00
Jeremy Allison
d598f54c52 JF - you might want to look at this patch.
Went through and fixed up all failure possibilities. If something (malloc,
file open etc.) fails, then this code goes through and cleans up all allocated
resources on exit. This is the equivalent of a C++ destuctor for the allocated
structures. We need code to be written like this to pass purify tests.

Jeremy.
(This used to be commit b260ef7cb1fb2b1e4661cc54eab403eb01fbfc35)
2000-04-05 19:48:06 +00:00
Jeremy Allison
6fc9ba3df7 Added strerror at debug level 0 on file create/open fail. Helps catch
problems.
Jeremy.
(This used to be commit a25891f52491a3aed89302704ba24df832aedf0b)
2000-04-05 01:26:52 +00:00
Jeremy Allison
68b1382ae2 Fix for spoolss code from Alan Hourihane <Alan.Hourihane@pinacl.co.uk>.
Jeremy.
(This used to be commit 33aa541e89ebe2e6a7c1808cea6dc7128bdb0587)
2000-04-03 18:05:33 +00:00
Jeremy Allison
8f1620125d acconfig.h configure configure.in: Added check for UT_SYSLEN for utmp code.
include/byteorder.h: Added alignment macros.
include/nameserv.h: Added defines for msg_type field options - from rfc1002.
lib/time.c: Typo fix.
lib/util_unistr.c: Updates from UNICODE branch.
printing/nt_printing.c: bzero -> memset.
smbd/connection.c: Added check for UT_SYSLEN for utmp code.

Other fixes : Rollback of unapproved commit from Luke.
Please *ask* next time before doing large changes to HEAD.

Jeremy.
(This used to be commit f02999dbf7971b4ea05050d7206205d7737a78b2)
2000-03-22 19:03:12 +00:00
Jeremy Allison
e601c0259e Fixes to add "paranoid" option to popen. Checks some basic things.
Jeremy
(This used to be commit 3b8cbb10de322fd7a1063fb5b681790b10d24ab0)
2000-03-16 20:55:37 +00:00
Jean-François Micouleau
6e11f21378 Interim fix for LPRng. If a lpq parsed line start with a space, we skip
it, to prevent false status return value.

Jeremy, it's a gross hack but you should consider it for 2.0.7 also.

	J.F.
(This used to be commit 2b1663ec13d9c481fb535c757744068919201f6a)
2000-03-13 11:21:03 +00:00
Jean-François Micouleau
e0ebb76a74 getprinter level 0: was to short, found most of the fields, undocumented,
undecoded, nothing in MSDN, but now it works :-)

cleanup of error codes.
fixed some dfs declarations function.

	J.F.
(This used to be commit 87da4404aba29a2ebd999886e4c06958c96d3e05)
2000-03-10 17:12:24 +00:00
Jean-François Micouleau
0f987d77be fixed enumprinterdata.
J.F.
(This used to be commit 2b4f09e7bbcbf1bf835f299e9f6bf89b32a7f03f)
2000-03-07 09:06:03 +00:00
Jeremy Allison
3cf31a194f Added replacement functions sys_popen and sys_pclose. These are based
on the glibc source code and are safer than the traditional popen as
they don't use a shell to exec the requested command. Now we have
these functions they can be tightened up (environment etc.) as required
to make a safe popen. It should now be safe to add the environement
variable loading code to loadparm.c
Jeremy.
(This used to be commit b52e92b09d4ca3b66e534f520468dee27065d048)
2000-02-15 19:36:47 +00:00
Jean-François Micouleau
8688933c7f fix the reply of rpc_alter_context
OpenPrinterEx is now decoding correctly the query
most of the EnumXXX use the new_buffer struct.
check the (un)marshalling return code.

conclusion: still a long way to go. all the client code has to be
rewritten, and I still wonder how to implement correctly the notify stuff.
(This used to be commit 3d6d3863751787b08d40268c83221add1487a5c9)
2000-02-15 18:07:45 +00:00
Jean-François Micouleau
6a6749d81e First commit of the spoolss code to the HEAD branch.
still needs a lot of cleaning/debuging.

	J.F.
(This used to be commit bd9d4cdde9193c120c6f4e8cf72f87cd67a9387e)
2000-02-07 16:17:59 +00:00
Jeremy Allison
21df01ff7d Wrapped popen calls in HAVE_POPEN - needed if we are to add the
env patch.
Jeremy.
(This used to be commit 94c075faee88538e48d1898f1694500b8a5d4c8b)
2000-01-29 00:23:40 +00:00
Andrew Tridgell
f6cf850f16 printing/print_cups.c from 2.0.6
(This used to be commit 452776a5a7951c84437e424874ff110fc56296db)
1999-12-17 01:46:15 +00:00
Andrew Tridgell
32a965e09c 2nd phase of head branch sync with SAMBA_2_0 - this delets all the files that were in the head branch but weren't in SAMBA_2_0
(This used to be commit d7b208786590b5a28618590172b8d523627dda09)
1999-12-13 13:35:20 +00:00
Andrew Tridgell
3db52feb1f first pass at updating head branch to be to be the same as the SAMBA_2_0 branch
(This used to be commit 453a822a76780063dff23526c35408866d0c0154)
1999-12-13 13:27:58 +00:00
Luke Leighton
0ce128e355 delineation between smb and msrpc more marked. smbd now constructs
pdus, and then feeds them over either a "local" function call or a "remote"
function call to an msrpc service.  the "remote" msrpc daemon, on the
other side of a unix socket, then calls the same "local" function that
smbd would, if the msrpc service were being run from inside smbd.

this allows a transition from local msrpc services (inside the same smbd
process) to remote (over a unix socket).

removed reference to pipes_struct in msrpc services.  all msrpc processing
functions take rpcsrv_struct which is a structure containing state info
for the msrpc functions to decode and create pdus.

created become_vuser() which does everything not related to connection_struct
that become_user() does.

removed, as best i could, connection_struct dependencies from the nt spoolss
printing code.

todo: remove dcinfo from rpcsrv_struct because this stores NETLOGON-specific
info on a per-connection basis, and if the connection dies then so does
the info, and that's a fairly serious problem.

had to put pretty much everything that is in user_struct into parse_creds.c
to feed unix user info over to the msrpc daemons.  why?  because it's
expensive to do unix password/group database lookups, and it's definitely
expensive to do nt user profile lookups, not to mention pretty difficult
and if you did either of these it would introduce a complication /
unnecessary interdependency.  so, send uid/gid/num_groups/gid_t* +
SID+num_rids+domain_group_rids* + unix username + nt username + nt domain
+ user session key etc.  this is the MINIMUM info identified so far that's
actually implemented.  missing bits include the called and calling
netbios names etc.  (basically, anything that can be loaded into
standard_sub() and standard_sub_basic()...)
(This used to be commit aa3c659a8dba0437c17c60055a6ed30fdfecdb6d)
1999-12-12 01:25:49 +00:00
Jean-François Micouleau
ed5fbd743b don't leak printer handles,
don't coredump when adding forms,
and a small non obvious memory leak in the rpc buffers

	J.F.
(This used to be commit bee11f8889378b9f1cc6e2818fd0f8dd7ddcf10d)
1999-09-27 13:12:55 +00:00
Jean-François Micouleau
0490365b04 Don't duplicate forms anymore, just update the definition.
Many memory leaks fixed.

	J.F.
(This used to be commit f328ae8024584599324ae4263bb9fb89a358279f)
1999-09-25 14:18:48 +00:00
Jean-François Micouleau
89517ed4d3 many small bugs...
J.F.
(This used to be commit bda429eb73fa3c0a6d59cf47a8285e3fc0cdae98)
1999-07-01 18:02:34 +00:00
Jean-François Micouleau
0c927f2b1b Fixed most memory leak and big-endian bug in the spoolss code.
Also added addform/setform rpc api calls. Now I can add/change forms from
the server property dialog box.

Jean Francois
(This used to be commit 8d73f83b6c112327a51c0df2e96a1866deb13c3a)
1999-06-22 18:42:10 +00:00
Jean-François Micouleau
4e5bf481fb last part of RPC api change.
and of rpcclient eventlog funtion

	Jean Francois
(This used to be commit 7fc8659e83bf0269df297016beac6793ff0bdf32)
1999-05-03 22:04:02 +00:00
Jean-François Micouleau
de0c233a7a Adding RPC spoolss code support and some new low-level printing functions.
Jean Francois
(This used to be commit 9e8192cc674db7551569d23982877dd25c488b50)
1999-04-27 10:13:02 +00:00
Tim Potter
bc40376caa Changed calls to strncat() to safe_strcat(). Fix from SAMBA_2_0 branch.
(This used to be commit 2d2c5ae7cd610b0d97151f90ad5ac7f4e41e514d)
1999-04-07 04:20:00 +00:00
Jeremy Allison
bfc38ff872 Makefile.in: Added maintainer mode fixes.
aclocal.m4: Added AC_LIBTESTFUNC.
configure.in: Fixed -lsecurity -lsec problems.
client.c: dos_ fixes.
groupdb/aliasunix.c: Dead code removal.
include/includes.h: Added default PRINTCAP_NAME.
lib/genrand.c: dos_ fixes.
lib/replace.c: Added strtoul.
lib/system.c: dos_ fixes.
lib/util.c: dos_ fixes.
lib/util_sid.c: Signed/unsigned fixes.
lib/util_str.c: removed bad const.
locking/locking_slow.c: dos_ fixes.
printing/printing.c: dos_ fixes.
rpc_server/srv_samr.c: Dead code removal.
rpc_server/srv_sid.c: global_myworkgroup defined with wrong size AGAIN !
smbd/dir.c: dos_ fixes.
smbd/open.c: dos_ fixes.
smbd/oplock.c: dos_ fixes.
smbd/reply.c smbd/server.c smbd/service.c smbd/uid.c: dos_ fixes.

Jeremy.
(This used to be commit 6acb4b68f68d516e2ac3c47e500f5600d653435e)
1998-11-25 21:17:20 +00:00
Andrew Tridgell
735926877b replace ' with _ as well
(This used to be commit e93491953a2555401a372de74ac2aee0cc44cb88)
1998-11-23 03:46:51 +00:00
Jeremy Allison
768761820e Added the same open()/fopen()/creat()/mmap() -> sys_XXX calls.
Tidied up some of the mess (no other word for it). Still doesn't
compile cleanly. There are calls with incorrect parameters that
don't seem to be doing the right thing.

This code still needs surgery :-(.

Jeremy.
(This used to be commit 18ff93a9abbf68ee8c59c0af3e57c63e4a015dac)
1998-11-17 20:50:07 +00:00
Jeremy Allison
609f348217 include/kanji.h include/proto.h lib/kanji.c: Added const parameters in string wrappers.
printing/printing.c: Added OSF1 fix.
Jeremy.
(This used to be commit 9d05d80f811426f83a975d28e64c5d6b10574c25)
1998-11-12 19:40:33 +00:00
Jeremy Allison
f9584f93be J.F.'s latest printer fixes plus his gcc -picky fix for web/cgi.c
Jeremy.
(This used to be commit bd4e2972f50cafd932a5c915cdeeef7eedda07cc)
1998-11-11 23:31:37 +00:00
Jeremy Allison
375e53826c include/local.h:
include/smb.h:
param/loadparm.c: Made GUEST_SESSSETUP run time selectable. Horror of horrors :-).
printing/printing.c: Added J.F.'s latest fix.
rpc_parse/parse_misc.c:
parse_reg.c:
rpcclient/cmd_reg.c:
rpcclient/display.c: SGI compiler signed/unsigned issues.
smbd/reply.c: Made GUEST_SESSSETUP run time selectable. Horror of horrors :-).
utils/testparm.c: Added extra test.
Jeremy.
(This used to be commit 9668a5ef50be2e6b575f9989e87ee2ff8da5ac1d)
1998-11-10 20:51:25 +00:00
Jeremy Allison
e4f974c611 Makefile.in: Removed rpc_server/srv_ldap_helpers.c per J.F.'s instructions.
client/client.c:
client/clitar.c:
include/client.h:
smbwrapper/smbw_dir.c:
smbwrapper/smbw_stat.c:
smbwrapper/smbw.c:
lib/util.c: Converted all use of 'mode' to uint16.
smbd/quotas.c: Fixed stupid comment bug I put in there :-(.
printing/printing.c: Fix from J.F. to new code.
Jeremy.
(This used to be commit bacd3e9d2036a804e73644a28fc498f229c8446c)
1998-11-09 20:33:37 +00:00
Jeremy Allison
01e04614c7 Makefile.in configure configure.in include/proto.h smbd/noquotas.c smbd/quotas.c:
Added quotas patch for autoconf from Dejan Ilic <svedja@lysator.liu.se>.
printing/printing.c: Filenames with spaces patch from Allan Bjorklund <allan@umich.edu>
utils/nmblookup.c: Fix usage() function.
smbd/reply.c: Split out the security=server and security=domain checks into
              check_server_security() and check_domain_security() to aid the
              writing of the 'hack' appliance mode invented by John Schimmel.
Jeremy.
(This used to be commit f09ab9b52251087a58af92ec753537ca34a970fc)
1998-11-03 02:25:28 +00:00
Jeremy Allison
fc62d6bf36 Small tidyups for gcc in 'preen' mode....
Jeremy.
(This used to be commit 60dc1a4a00a22088d33369588b0d5eb292cf084a)
1998-10-17 17:41:13 +00:00
Alexandre Oliva
a2d7f765e8 get away with dummy and .dummy files
(This used to be commit 90a8a02484a0897b053fd6531b7fec5d23098b6f)
1998-09-29 04:52:17 +00:00
Alexandre Oliva
cf971f88ac automated generation of .dummy files for each subdirectory;
dummy.in files are no longer needed, and new directories will be taken
care of automatically, at configure (or config.status --recheck) time
(This used to be commit 237a8e5fe62d757c04b8207cbbee4df1470cfe4e)
1998-09-28 00:14:36 +00:00
Alexandre Oliva
e649750cb4 major autoconf clean-up
fix problems in builds with srcdir!=builddir
(This used to be commit 1ffc3b807a3f80644c974b454ff5e6f68e89b546)
1998-09-21 09:07:08 +00:00
Jeremy Allison
7be02a2037 Changed variable TAB to htab as TAB is defined in a header file on RedHat5.1
Jeremy.
(This used to be commit 43ac52ad7a3c1da3c25a63d0458c87f9367453ec)
1998-09-18 18:16:45 +00:00
Andrew Tridgell
f6044c87c0 some cleanups to use ZERO_STRUCT() and friends
(This used to be commit 7b154dc4313324dfad6cf0117b8ce246bf12bf16)
1998-09-05 13:24:20 +00:00
Jeremy Allison
7bb86c1b13 Ok - this is the 64 bit widening check in. It changes the configure
to check for stat64 and friends, and then changes much of Samba
to use the data type SMB_OFF_T for file size information.

stat/fstat/lstat/lseek/ftruncate have now become sys_stat etc. to hide
the 64 bit calls if needed.

Note that this still does not expose 64 bit functionality to the
client, as the changes to the reply_xxx smb's are not yet done.

This code change should make these changes possible.

Still to do before full 64 bit-ness to the client:

fcntl lock code.
statfs code
widening of dev_t and ino_t (now possible due to SMB_DEV_T and SMB_OFF_T
types being in place).

Let me know if wierd things happen after this check-in and I'll
fix them :-).

Jeremy.
(This used to be commit 14500936c321d15995c963766aac67bf1f4e3824)
1998-09-03 18:40:31 +00:00