+Release 1.38.11 (28Jun06) released 28JunO6
+28Jun06
+- Add test for IRIX64 as OS
+- Fix scheduler hang during clock shift (due to missing unlock())
+- Minor tweaks to bregex.c
+- Fix to block.c to correctly check for DVD number of parts.
+- Fix to dev.c to permit DVD seeking in spool file. Corrects
+ label rewriting problems.
+- Clarify license for techlogs (GPL). I consider them "part" of
+ the source code of Bacula.
+- Use FDL license for developer's manual, French translation, German
+ translation, bimagemgr manuals (same as the main manual), and
+ the web site.
+
Release 1.38.10 (08Jun06) released 12JunO6
08Jun06
- Modify setting ACLs to suppress error message if the file is a
- Release Notes for Bacula 1.38.10
+ Release Notes for Bacula 1.38.11
Bacula code: Total files = 423 Total lines = 139,479 (*.h *.c *.in)
enclosed in double quotes, in which case, the backslashes
must be doubled.
+Major Changes for 1.38.11
+- Add test for IRIX64 as OS
+- Fix scheduler hang during clock shift (due to missing unlock())
+- Minor tweaks to bregex.c
+- Fix to block.c to correctly check for DVD number of parts.
+- Fix to dev.c to permit DVD seeking in spool file. Corrects
+ label rewriting problems.
+- Clarify license for techlogs (GPL). I consider them "part" of
+ the source code of Bacula.
+- Use FDL license for developer's manual, French translation, German
+ translation, bimagemgr manuals (same as the main manual), and
+ the web site.
+
+New features for 1.38.11:
+- None
+
+====================================================================
+
Major Changes for 1.38.10:
- This is a primarily a bug fix release, with the following bugs being
resolved #570, 609, 611, 613, 614, 617 as well as other bugs not
Priority:
For 1.39:
-- Make authentication failures single threaded.
+- Correct the Include syntax in the m4.xxx files in examples/conf
+- Get Perl replacement for bregex.c
- Make base64.c (bin_to_base64) take a buffer length
argument to avoid overruns.
-- Fix catreq.c digestbuf at line 411 in src/dird/catreq.c
and verify that other buffers cannot overrun.
- Implement VolumeState as discussed with Arno.
-- Install man pages
- Document techniques for restoring large numbers of files.
- Document setting my.cnf to big file usage.
- Add example of proper index output to doc.
target slot. The catalog should be updated accordingly.
.move transfer device=xxx fromslot=yyy toslot=zzz
+==== SQL
+# get null file
+select FilenameId from Filename where Name='';
+# Get list of all directories referenced in a Backup.
+select Path.Path from Path,File where File.JobId=nnn and
+ File.FilenameId=(FilenameId-from-above) and File.PathId=Path.PathId
+ order by Path.Path ASC;
+
+
=== Migration from David ===
What I'd like to see:
- Does ClientRunAfterJob fail the job on a bad return code?
- Make hardlink code at line 240 of find_one.c use binary search.
- Add ACL error messages in src/filed/acl.c.
+- Make authentication failures single threaded.
+- Make Dir and SD authentication errors single threaded.
+- Install man pages
+- Fix catreq.c digestbuf at line 411 in src/dird/catreq.c
+
Kern Sibbald
General:
+Release 1.38.11 (28Jun06) released 28JunO6
+28Jun06
+- Add test for IRIX64 as OS
+- Fix scheduler hang during clock shift (due to missing unlock())
+- Minor tweaks to bregex.c
+- Fix to block.c to correctly check for DVD number of parts.
+- Fix to dev.c to permit DVD seeking in spool file. Corrects
+ label rewriting problems.
+- Clarify license for techlogs (GPL). I consider them "part" of
+ the source code of Bacula.
+- Use FDL license for developer's manual, French translation, German
+ translation, bimagemgr manuals (same as the main manual), and
+ the web site.
+
Release 1.38.10 (08Jun06) released 12JunO6
08Jun06
- Modify setting ACLs to suppress error message if the file is a
Kern Sibbald
General:
+30Jun06
+- Robert committed his low impact changes.
+- I removed a size_t from the jcr.h definition.
+- Update the tape regression scripts (still to be tested).
+- Add gcc and gcc-c++ requires to srm as suggested by a user.
+- Require done or quit to exit from in memory tree restore.
26Jun06
- Write install/uninstall of new manpages. There are now a
pile of man pages. Some of which need a lot of work.
%define useradd /usr/sbin/useradd
%define groupadd /usr/sbin/groupadd
%define usermod /usr/sbin/usermod
-%define _rescuever 1.8.4
+%define _rescuever 1.8.5
# platform defines - set one below or define the build_xxx on the command line
# RedHat builds
%define _docsrc ../%{name}-docs-%{version}
%define _rescuesrc ../%{name}-rescue-%{_rescuever}
+BuildRequires: gcc, gcc-c++
BuildRequires: atk-devel, ncurses-devel, pango-devel, perl
BuildRequires: libstdc++-devel, libxml2-devel, zlib-devel
BuildRequires: openssl-devel
--with-scriptdir=/etc/bacula \
--enable-smartalloc \
--enable-client-only \
- %if %{mdk}
- --disable-nls \
- %endif
+ %if %{mdk}
+ --disable-nls \
+ %endif
--enable-static-fd
make
--with-postgresql \
%endif
%if %{wxconsole}
- --enable-wx-console \
+ --enable-wx-console \
%endif
--with-working-dir=%{working_dir} \
--with-pid-dir=/var/run \
/* In cats/sqlite.c */
void my_sqlite_free_table(B_DB *mdb);
SQL_ROW my_sqlite_fetch_row(B_DB *mdb);
-int my_sqlite_query(B_DB *mdb, char *cmd);
+int my_sqlite_query(B_DB *mdb, const char *cmd);
void my_sqlite_field_seek(B_DB *mdb, int field);
SQL_FIELD *my_sqlite_fetch_field(B_DB *mdb);
/* In cats/sqlite.c */
void my_sqlite_free_table(B_DB *mdb);
SQL_ROW my_sqlite_fetch_row(B_DB *mdb);
-int my_sqlite_query(B_DB *mdb, char *cmd);
+int my_sqlite_query(B_DB *mdb, const char *cmd);
void my_sqlite_field_seek(B_DB *mdb, int field);
SQL_FIELD *my_sqlite_fetch_field(B_DB *mdb);
/*
* Submit a sqlite query and retrieve all the data
*/
-int my_sqlite_query(B_DB *mdb, char *cmd)
+int my_sqlite_query(B_DB *mdb, const char *cmd)
{
int stat;
actuallyfree(mdb->sqlite_errmsg);
mdb->sqlite_errmsg = NULL;
}
- stat = sqlite_get_table(mdb->db, cmd, &mdb->result, &mdb->nrow, &mdb->ncolumn,
+ stat = sqlite_get_table(mdb->db, (char *)cmd, &mdb->result, &mdb->nrow, &mdb->ncolumn,
&mdb->sqlite_errmsg);
mdb->row = 0; /* row fetched */
return stat;
* Version $Id$
*/
/*
- Copyright (C) 2002-2005 Kern Sibbald
+ Copyright (C) 2002-2006 Kern Sibbald
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
}
parse_ua_args(ua);
if (ua->argc == 0) {
- break;
+ bsendmsg(tree->ua, _("Illegal command. Enter \"done\" to exit.\n"));
+ continue;
}
len = strlen(ua->argk[0]);
bnet_fsend(sd, "%ld %d 0", jcr->JobFiles, STREAM_ENCRYPTED_SESSION_DATA);
/* Grow the bsock buffer to fit our message if necessary */
- if ((size_t) sizeof_pool_memory(sd->msg) < jcr->pki_session_encoded_size) {
+ if (sizeof_pool_memory(sd->msg) < jcr->pki_session_encoded_size) {
sd->msg = realloc_pool_memory(sd->msg, jcr->pki_session_encoded_size);
}
Dmsg1(300, "bfiled>stored:header %s\n", sd->msg);
/* Grow the bsock buffer to fit our message if necessary */
- if ((size_t) sizeof_pool_memory(sd->msg) < size) {
+ if (sizeof_pool_memory(sd->msg) < size) {
sd->msg = realloc_pool_memory(sd->msg, size);
}
BSOCK *sd = jcr->store_bsock;
uint64_t fileAddr = 0; /* file address */
char *rbuf, *wbuf;
- int rsize = jcr->buf_size; /* read buffer size */
+ int32_t rsize = jcr->buf_size; /* read buffer size */
POOLMEM *msgsave;
CIPHER_CONTEXT *cipher_ctx = NULL; /* Quell bogus uninitialized warnings */
const uint8_t *cipher_input;
* could be returned for the given read buffer size.
* (Using the larger of either rsize or max_compress_len)
*/
- jcr->crypto_buf = check_pool_memory_size(jcr->crypto_buf, (MAX((size_t) rsize, max_compress_len) + cipher_block_size - 1) / cipher_block_size * cipher_block_size);
+ jcr->crypto_buf = check_pool_memory_size(jcr->crypto_buf, (MAX(rsize, (int32_t)max_compress_len) + cipher_block_size - 1) / cipher_block_size * cipher_block_size);
wbuf = jcr->crypto_buf; /* Encrypted, possibly compressed output here. */
}
jcr->Errors++;
} else {
/* tell user if snapshot creation of a specific drive failed */
- size_t i;
- for (i=0; i<strlen (szWinDriveLetters); i++) {
+ int i;
+ for (i=0; i < strlen(szWinDriveLetters); i++) {
if (islower(szWinDriveLetters[i])) {
Jmsg(jcr, M_WARNING, 0, _("Generate VSS snapshot of drive \"%c:\\\" failed. VSS support is disabled on this drive.\n"), szWinDriveLetters[i]);
jcr->Errors++;
if (bDoVSS) {
if (g_pVSSClient->CloseBackup()) {
/* inform user about writer states */
- for (size_t i=0; i<g_pVSSClient->GetWriterCount(); i++) {
+ for (int i=0; i<(int)g_pVSSClient->GetWriterCount(); i++) {
int msg_type = M_INFO;
if (g_pVSSClient->GetWriterState(i) < 1) {
msg_type = M_WARNING;
Dmsg1(30, "Stream=Encrypted Session Data, size: %d\n", sd->msglen);
/* Decode and save session keys. */
- cryptoerr = crypto_session_decode((uint8_t *)sd->msg, (size_t)sd->msglen, jcr->pki_recipients, &cs);
+ cryptoerr = crypto_session_decode((uint8_t *)sd->msg, (uint32_t)sd->msglen, jcr->pki_recipients, &cs);
switch(cryptoerr) {
case CRYPTO_ERROR_NONE:
/* Success */
case STREAM_SIGNED_DIGEST:
/* Save signature. */
- if ((sig = crypto_sign_decode((uint8_t *)sd->msg, (size_t)sd->msglen)) == NULL) {
+ if ((sig = crypto_sign_decode((uint8_t *)sd->msg, (uint32_t)sd->msglen)) == NULL) {
Jmsg1(jcr, M_ERROR, 0, _("Failed to decode message signature for %s\n"), jcr->last_fname);
}
break;
alist *pki_recipients; /* Trusted Recipients */
CRYPTO_SESSION *pki_session; /* PKE Public Keys + Symmetric Session Keys */
uint8_t *pki_session_encoded; /* Cached DER-encoded copy of pki_session */
- size_t pki_session_encoded_size; /* Size of DER-encoded pki_session */
+ int32_t pki_session_encoded_size; /* Size of DER-encoded pki_session */
POOLMEM *crypto_buf; /* Encryption/Decryption buffer */
DIRRES* director; /* Director resource */
#endif /* FILE_DAEMON */
#undef VERSION
#define VERSION "1.39.14"
-#define BDATE "26 June 2006"
-#define LSMDATE "26Jun06"
+#define BDATE "30 June 2006"
+#define LSMDATE "30Jun06"
/* Debug flags */
#undef DEBUG